色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

C語言里的鐵布衫——const

Q4MP_gh_c472c21 ? 來源:未知 ? 作者:胡薇 ? 2018-06-11 16:26 ? 次閱讀

相傳在C的世界里出現了一件極品裝備(鐵布衫)const、它的出現,讓天下的所有刺客和黑客都聞風喪膽,在它的保護下,所有的變量都可以保存的完好無損const是constant的縮寫,表示海枯石爛、恒定不變、一旦相伴、永不變心。只要一個變量前面用const來修飾,就意味著該變量的數據可以被訪問,不能被修改。其實我們還可以叫它readonly.

雖然理解起const來相對比較容易理解,但是const不僅僅可以用來修辭基本類型,它還可以經常用來修辭一些構造類型和指針及其參合體,如數組、指針、指針數組、結構體數組、結構體指針數組一旦和這些復雜的類型結合起來還是有一定的迷惑性的.

例如:

(1) const int a = 10;

(2) int const a = 10;

(3) const int a[10] = {1,2,3, 4, 5, 6, 7, 8, 9, 10};

(4) const int *p;

(5) int * const p;

(6) const struct devices dev[5];

(7) struct devices const * dev[5];

看到上面的例子,我相信很多人都會倒吸一口冷氣。話不多說直接看辨識技巧

將類型去掉;

看const修飾誰,誰就擁有鐵布衫,誰的值就不能被修改,是readonly(1)去掉類型 int 變成“const a = 10”,a 擁有了鐵布衫,a的值是不變的(2)去掉類型 int 變成“const a = 10”,a 擁有了鐵布衫,a的值是不變的,這兩個的效果一樣(3)去掉類型 int 變成“const a[10]”, a[10]擁有了鐵布衫,a數組里面的值是不變的(4)去掉類型 int 變成“const *p”,*p擁有鐵布衫,p所指的空間里面的值是不變的(5) 去掉類型 int * 變成 “const p”,指針變量p擁有了鐵布衫,指針變量p的值不變,也就是說p不能再指向其他地址了,但是p所指向的空間的值可變(6)去掉類型struct devices變成“const dev[5]”,dev[5]擁有了鐵布衫,dev[5]數組的值不變(7)這是一個devices結構體類型的指針數組,它擁有5個devices結構體類型的指針,每個指針指向一個devices結構體,const修飾*dev[5],去掉類型struct devices變成“const *dev[5]”,指針數組*dev[5]擁有了鐵布衫,指針數組dev中每個元素指向的空間里的值不變。

作用總結:

首先、const關鍵字修飾變量名的時候,把這個變量變為是一個只讀變量,這里的只讀不是全局數據區的or段。它所修飾的變量原來是在哪個區域,const修飾之后它還在那個區域。比如修飾一個局部變量const int num = 5;那么這個局部變量還是存在棧空間上。它本身對應的內存空間還是可以變的。但是不可以通過num去修改它。如果定義一個指針指向num的地址。則可以改變num的值。其次、const可以修飾形參(保護形參不被修改),在這一點上,站在實現者的角度,const可以防止函數對實參修改帶來的問題。站在調用者的角度來說,它對于實參只能訪問,不能修改。所以、合理地使用關鍵字const可以使編譯器很自然地保護那些不希望被改變的參數,防止其被無意的代碼修改。簡而言之,這樣可以減少bug的出現。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7605

    瀏覽量

    136994
  • CONST
    +關注

    關注

    0

    文章

    44

    瀏覽量

    8177

原文標題:在C的世界里出現了一件極品裝備(鐵布衫)const

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    C語言關鍵字const的幾種用法

    本期來講解一個C語言的關鍵字——const
    發表于 06-21 11:05 ?1673次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>關鍵字<b class='flag-5'>const</b>的幾種用法

    C語言const關鍵字的用法

    const是constant的簡寫,用來定義常量,如果一個變量被const修飾,那么它的值就不能再被改變。
    發表于 06-29 09:51 ?468次閱讀

    C語言之正確使用Const

    C語言之正確使用Const基本解釋  const是一個C語言的關鍵字,它限定一個變量不允許被改變
    發表于 10-07 11:20

    C語言——正確使用const

    C語言——正確使用const基本解釋   const是一個C語言的關鍵字,它限定一個變量不允許被
    發表于 04-23 11:58

    C語言布衫——const

    相傳在C的世界出現了一件極品裝備(布衫const、它的出現,讓天下的所有刺客和黑客都聞風喪膽,在它的保護下,所有的變量都可以保存的完好
    發表于 06-11 08:28

    【每日一知識點】C語言const詳解

    本帖最后由 張飛電子學院蔡琰 于 2021-3-29 11:01 編輯 C語言const關鍵字是constant的縮寫,是恒定不變的意思。通常翻譯為常量、常數等,我們一看到const
    發表于 03-29 10:53

    筆記本的布衫

    筆記本的布衫 在盡情地享受高科技數碼產品給我們工作和生活帶來的便利和樂趣的今天,你是否曾為你身軀嬌小的PSP被刮傷而心疼好幾天,你
    發表于 01-20 14:32 ?474次閱讀

    請問C語言strcpy具體怎么使用

    標準庫的string類提供了3個成員函數來從一個string得到c類型的字符數組:c_str()、data()、copy(p,n)。這是C語言里面復制字符串的庫函數, 函數聲明包括在專
    發表于 11-29 08:54 ?1.1w次閱讀

    C語言生成的段和CMD文件

    本章講述COFF格式、C語言生成的段、CMD文件和復雜的.const段。
    發表于 04-12 16:37 ?11次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>生成的段和CMD文件

    C++與Cconst關鍵字有何差別?

    C++與C中的const關鍵字有何差別?
    的頭像 發表于 02-03 14:51 ?1822次閱讀

    C語言const和volatile的深度學習

    關于const的用法,現在大概前前后后應該寫了有兩篇文章,以前學習的時候,用法體會不是那么深刻,為啥這么說呢,因為在學習c++的時候,會發現const關鍵字有新的玩法,關于這個新的玩法,大家可以去看最近學習總結寫的
    的頭像 發表于 12-24 16:13 ?679次閱讀

    constC語言C++中的區別與使用!

    const修飾的全局變量不能以地址的形式進行修改,由于它在內存中位于常量區,他的地址空間是只讀的。在C語言中被const的變量是直接被分配內存的。
    的頭像 發表于 04-24 16:08 ?1393次閱讀

    C語言const的用法介紹

    C語言標準庫中很多函數的參數都被 const 限制了,但我們在以前的編碼過程中并沒有注意這個問題,經常將非 const 類型的數據傳遞給 const
    發表于 01-05 10:03 ?575次閱讀

    C語言const關鍵字詳解

    const我平時沒咋用過,最近在一份代碼中配置外設寄存器值的數組定義上看到用了這個,因此進行一下簡單的入門學習。在本文最后1點給出const在配置外設初始默認寄存器的用法。
    的頭像 發表于 04-15 15:47 ?686次閱讀

    C語言|const關鍵字介紹

    最近看別人的項目, 發現const使用比較多, 通過使用const來保護變量, 這篇推文就來簡單回顧一下相關知識!
    的頭像 發表于 05-25 15:11 ?544次閱讀
    主站蜘蛛池模板: 91久久偷偷看嫩草影院无费 | 小sao货水好多真紧h的视频| 国产精品三级在线观看| 无码国产精品高潮久久9| 解开美女胸衣2破解版| 2021扫黑风暴在线观看免费完整版| 欧美内射深插日本少妇| 国产成人无码视频一区二区三区 | 长篇高h肉爽文丝袜| 蜜臀AV浪潮99国产麻豆| 二级特黄绝大片免费视频大片| 亚洲国产cao| 欧美顶级情欲片免费看| 国产午夜精品久久久久九九| 制服丝袜 快播| 爽爽影院线观看免费| 久久99re2热在线播放7| 成人免费观看国产高清| 亚洲综合网国产精品一区| 中文字幕绝色少妇性| 日韩av国产av欧美天堂社区| 精品久久免费观看| 草草色| 亚洲国产五月综合网| 女子初尝黑人巨嗷嗷叫| 国产亚洲精品久久综合阿香| brazzers欧美最新版视频| 亚洲欧美综合乱码精品成人网| 欧美日韩永久久一区二区三区| 国产在线精品亚洲观看不卡欧美| JIZJIZJIZ 日本老师水多| 一本到2019线观看| 神马电影dy888午夜我不卡| 麻豆官网md.pub| 黄网址在线观看| 国产成人在线视频免费观看| 7777色鬼xxxx欧美色夫| 亚洲综合中文| 亚洲成人中文| 天天狠狠色噜噜| 青柠在线视频|