亚洲一级电影在线观看,九九精品无码专区免费,亚洲AV无码资源在线观看 ,欧美国产高清

C語言怎樣定義和聲明全局變量和函數(shù)最好

時(shí)間:2020-11-23 18:04:49 筆試題目 我要投稿

C語言怎樣定義和聲明全局變量和函數(shù)最好

  首先, 盡管一個(gè)全局變量或函數(shù)可以(在多個(gè)編譯單元中) 有多處“聲明”, 但是“定義” 卻只能允許出現(xiàn)一次。定義是分配空間并賦初值(如果有) 的聲明。

  最好的安排是在某個(gè)相關(guān)的.c 文件中定義, 然后在頭文件(.h) 中進(jìn)行外部聲明, 在需要使用的時(shí)候, 只要包含對(duì)應(yīng)的頭文件即可。定義變量的.c 文件也應(yīng)該包含該頭文件, 以便編譯器檢查定義和聲明的一致性。這條規(guī)則提供了高度的可移植性: 它和ANSI C 標(biāo)準(zhǔn)一致, 同時(shí)也兼容大多數(shù)ANSI 前的編譯器和連接器。

  Unix 編譯器和連接器通常使用“通用模式” 允許多重定義, 只要保證最多對(duì)一處進(jìn)行初始化就可以了; ANSI C 標(biāo)準(zhǔn)稱這種行為為“公共擴(kuò)展”, 沒有語帶雙關(guān)的意思。

C語言怎樣定義和聲明全局變量和函數(shù)最好

  可以使用預(yù)處理技巧來使類似DEFINE(int, i);的語句在一個(gè)頭文件中只出現(xiàn)一次, 然后根據(jù)某個(gè)宏的設(shè)定在需要的`時(shí)候轉(zhuǎn)化成定義或聲明。

  但不清楚這樣的麻煩是否值得。如果希望讓編譯器檢查聲明的一致性, 一定要把全局聲明放到頭文件中。特別是, 永遠(yuǎn)不要把外部函數(shù)的原型放到.c 文件中: 通常它與定義的一致性不能得到檢查, 而矛盾的原型比不用還糟糕。

【C語言怎樣定義和聲明全局變量和函數(shù)最好】相關(guān)文章:

Javascript函數(shù)的定義和用法分析11-15

有關(guān)php parse-str() 函數(shù)的定義和用法11-15

c#和javascript函數(shù)相互調(diào)用示例11-14

怎樣建立和理解非常復(fù)雜的聲明?12-19

工傷的定義和范圍12-16

土地的定義和特征11-15

malloc()和free()函數(shù)區(qū)別10-08

闡釋詞的定義和來源08-14

金融期權(quán)的定義和特征08-26

主站蜘蛛池模板: 国产小视频a在线观看| 中文字幕免费不卡二区| 巧家县| 国产99免费视频| 秋霞国产在线| 国产精品女同一区二区| 色视频综合无码一区二区三区| 日韩精品成人网页视频在线| 黑人巨大av无码专区| 亚洲欧洲日产国码综合在线| 国产成人av免费观看| 色哟哟国产成人精品| 久久婷婷综合色丁香五月| 白河县| 国产女主播白浆在线观看| 欧美亚洲精品一区二区| 瑞昌市| 伊人精品成人久久综合97| 日韩精品人妻中文字幕有码| 中文亚洲欧美日韩无线码| 亚洲国产欧美中文丝袜日韩| 2018国产大陆天天弄| 部精品久久久久久久久| 国产成人亚洲日韩欧美性| 成人无码潮喷在线观看| 中文字幕无码中文字幕有码在线 | 亚洲欧美中文字幕5发布| 福利一区二区三区视频在线观看| 亚洲精品天堂在线观看| 亚洲性无码av在线欣赏网| 波多野结衣在线精品视频| 最新精品国偷自产在线下载| 麻豆精品一区二区综合av| 勐海县| 国产精品久久久久久久久岛| 欧美人与zoxxxx另类| 成人福利在线免费观看| 97精品人人妻人人| 中文字幕人乱码中文字幕| 丁香婷婷激情网| 无码熟妇人妻av在线网站|