日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

C語(yǔ)言|const關(guān)鍵字介紹

玩轉(zhuǎn)單片機(jī) ? 來(lái)源:玩轉(zhuǎn)單片機(jī) ? 2023-05-25 15:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

最近看別人的項(xiàng)目,發(fā)現(xiàn)const使用比較多,通過使用const來(lái)保護(hù)變量,這篇推文就來(lái)簡(jiǎn)單回顧一下相關(guān)知識(shí)!

|用法1

有時(shí)候定義了一些變量,但是并不想它被修改,簡(jiǎn)單理解就是定義了一些變量,這些變量的性質(zhì)是只讀,就可以使用const來(lái)保護(hù)相關(guān)數(shù)據(jù):

#include "stdio.h"

int main()
{
    // 寫法1 
    const int a = 10;
    // 寫法2
    int const b = 10;
    // 報(bào)錯(cuò) 
    a = 20;
    // 報(bào)錯(cuò)
    b = 20; 
}

|用法2

除了保護(hù)變量,還能和指針配合使用,特別要注意const的位置,這是個(gè)細(xì)節(jié)問題,不能忽視!!!

#include "stdio.h"

int main()
{
    // 變量 
    int a = 10;
    int b = 10;
    // 寫法1 
    const int *p1 = &a;
    // 寫法2
    int const *p2 = &a;
    // 寫法3
    int *const p3 = &a;
    
    // 重新賦值 
    p1 = &b;
    p2 = &b;
    // 報(bào)錯(cuò) 
    // p3 = &b;
    // 成功 
    *p3 = 20;
    // 報(bào)錯(cuò) 
    *p1 = 20;
}

注意它們的區(qū)別:1個(gè)只能改值,一個(gè)只能改地址!

|用法3

除了配合指針使用,還能作為函數(shù)的參數(shù)進(jìn)行使用,可以細(xì)分為兩類

類型1

為了防止在函數(shù)內(nèi)部修改指針指向的數(shù)據(jù),就可以用 const的如下寫法限制:

size_t strlen ( const char * str );

類型2

為了防止在函數(shù)內(nèi)部修改指針指向地址,就可以用 const的如下寫法限制:

voidtest( char *constobj);

特別注意:加了const的變量或指針和不加是有區(qū)別的, 不要隨便進(jìn)行類型轉(zhuǎn)換, 或者其他異常操作!





審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • C語(yǔ)言
    +關(guān)注

    關(guān)注

    183

    文章

    7646

    瀏覽量

    146202
  • CONST
    +關(guān)注

    關(guān)注

    0

    文章

    45

    瀏覽量

    8826

原文標(biāo)題:C語(yǔ)言|const關(guān)鍵字

文章出處:【微信號(hào):玩轉(zhuǎn)單片機(jī),微信公眾號(hào):玩轉(zhuǎn)單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    C語(yǔ)言關(guān)鍵字const的幾種用法

    本期來(lái)講解一個(gè)C語(yǔ)言關(guān)鍵字——const
    發(fā)表于 06-21 11:05 ?2600次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語(yǔ)言</b><b class='flag-5'>關(guān)鍵字</b><b class='flag-5'>const</b>的幾種用法

    C語(yǔ)言volatile關(guān)鍵字詳解 精選資料分享

    1.volatile和什么有關(guān)百度翻譯是這樣子翻譯volatile的:圖1-1 百度翻譯volatile截圖volatile屬于C語(yǔ)言關(guān)鍵字,《C Primer Puls》 是這樣解
    發(fā)表于 07-22 07:20

    嵌入式程序員常見的const、static、volatile關(guān)鍵字

    嵌入式程序員const、static、volatile三個(gè)關(guān)鍵字的樸素認(rèn)識(shí)摘要:在C語(yǔ)言程序編寫中,const、static
    發(fā)表于 12-21 06:08

    標(biāo)準(zhǔn)C語(yǔ)言總共有32個(gè)關(guān)鍵字

    標(biāo)準(zhǔn)C語(yǔ)言總共有32個(gè)關(guān)鍵字
    發(fā)表于 01-12 15:59 ?0次下載

    C語(yǔ)言32個(gè)關(guān)鍵字

    C語(yǔ)言32個(gè)關(guān)鍵字,感興趣的小伙伴們可以看看。
    發(fā)表于 07-26 16:29 ?67次下載

    C++與Cconst關(guān)鍵字有何差別?

    C++與C中的const關(guān)鍵字有何差別?
    的頭像 發(fā)表于 02-03 14:51 ?2787次閱讀

    C++中mutable關(guān)鍵字詳解與實(shí)戰(zhàn)

    mutable關(guān)鍵字詳解與實(shí)戰(zhàn) 在C++中mutable關(guān)鍵字是為了突破const關(guān)鍵字的限制,被mutable
    的頭像 發(fā)表于 09-10 09:23 ?6265次閱讀

    C++中的const關(guān)鍵字介紹

    前一篇文章我們主要介紹C++中的復(fù)合類型引用和指針,這篇文章我們將會(huì)主要介紹C++中const關(guān)鍵字
    的頭像 發(fā)表于 03-17 14:01 ?1425次閱讀

    淺談C++的mutable關(guān)鍵字

    C++11中推出了一種特殊的關(guān)鍵字:mutable用于修飾類變量。它的作用是標(biāo)注該變量一定會(huì)被修改,因此也就不是const類型。目的是為了使這些成員變量在被const
    的頭像 發(fā)表于 04-15 11:13 ?4674次閱讀

    const關(guān)鍵字應(yīng)用總結(jié)

    C++中的const關(guān)鍵字的用法非常靈活,而使用const將大大改善程序的健壯性
    的頭像 發(fā)表于 05-26 09:06 ?1283次閱讀

    C語(yǔ)言32個(gè)關(guān)鍵字可以分為這幾類

    C語(yǔ)言是一種面向過程、抽象化的通用程序設(shè)計(jì)語(yǔ)言,廣泛應(yīng)用于嵌入式底層和系統(tǒng)開發(fā)。C語(yǔ)言關(guān)鍵字共有
    的頭像 發(fā)表于 12-31 15:28 ?6716次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語(yǔ)言</b>32個(gè)<b class='flag-5'>關(guān)鍵字</b>可以分為這幾類

    淺析C語(yǔ)言中的regiseter關(guān)鍵字

    C語(yǔ)言中重要的關(guān)鍵字有很多,static const extern我們之前都講過,還有一個(gè)在面試中出現(xiàn)的頻率也比較高:register。
    的頭像 發(fā)表于 08-25 17:10 ?2152次閱讀
    淺析<b class='flag-5'>C</b><b class='flag-5'>語(yǔ)言</b>中的regiseter<b class='flag-5'>關(guān)鍵字</b>

    快速掌握C語(yǔ)言關(guān)鍵字

    C語(yǔ)言中的32個(gè)關(guān)鍵字你知道多少個(gè)呢?根據(jù)關(guān)鍵字的作用分為四類:數(shù)據(jù)類型關(guān)鍵字、控制語(yǔ)句關(guān)鍵字、
    的頭像 發(fā)表于 07-06 08:04 ?1559次閱讀
    快速掌握<b class='flag-5'>C</b><b class='flag-5'>語(yǔ)言</b><b class='flag-5'>關(guān)鍵字</b>

    C語(yǔ)言關(guān)鍵字--typedef

    C語(yǔ)言關(guān)鍵字使用方法學(xué)習(xí)指南!
    的頭像 發(fā)表于 10-07 12:44 ?1200次閱讀

    C語(yǔ)言關(guān)鍵字分別發(fā)生在哪個(gè)階段

    在編譯的第一個(gè)階段:預(yù)處理,對(duì)一些宏定義做替換。 第二個(gè),constC語(yǔ)言中的 const 用于修飾只讀變量,表示變量本身不能修改。 這個(gè)關(guān)鍵字
    的頭像 發(fā)表于 11-24 10:31 ?1264次閱讀
    商丘市| 庄河市| 钦州市| 沂水县| 南华县| 甘孜县| 三江| 勐海县| 洪雅县| 娱乐| 榆林市| 浦北县| 翼城县| 罗田县| 息烽县| 南雄市| 通道| 新巴尔虎右旗| 福鼎市| 北辰区| 翁源县| 桑日县| 伽师县| 南宫市| 浦城县| 措美县| 巴中市| 临清市| 宁都县| 兰西县| 报价| 宜都市| 额尔古纳市| 聂拉木县| 屏山县| 龙岩市| 郓城县| 敦化市| 青铜峡市| 江永县| 吉安市|