初識C語言:三.變量的類型和存儲類別

三.變量的類型和存儲類別

變量都有類型狸驳,并在內(nèi)存中占有一定的空間

1字節(jié) =8位

1k = 1024字節(jié)

1M = 1024k

1G = 1024M

字節(jié)通常用Byte表示啥供,二進制的每一個0或1是組成二進制的最小單位,稱為位(bit).

基本類型數(shù)據(jù)(語言本身本身就已經(jīng)設(shè)定好的數(shù)據(jù)類型供編程使用)

整形

整形 --int 4個字節(jié)

短整形 -- short int? ? 2個字節(jié)

長整型 --long int 8個字節(jié)

浮點數(shù)【實數(shù)】

單精度 --float --4個字節(jié)

雙精度 --double --8個字節(jié) (雙精度運算特別費時>恪!G妇)

(即使定義為浮點型千元,進行運算時,若運算式子中蔓姚,常量都為整形捕虽,得出結(jié)果也為整形)

字符? ? char? 1個字節(jié)(字符的本質(zhì)實際上與整數(shù)的存儲方式相同)

sizeof(i)結(jié)果為定義變量i的數(shù)據(jù)類型所占的字節(jié)長度。

類型轉(zhuǎn)換:自動轉(zhuǎn)換是把比較窄的操作數(shù)轉(zhuǎn)換為比較寬的操作數(shù)坡脐,不丟失信息的轉(zhuǎn)換薯鳍。

針對可能出現(xiàn)信息丟失的表達式,編譯器可能給出警告信息挨措,如把較長的整形值賦給較短的整形變量挖滤,把浮點數(shù)賦值給整形變量,等等浅役,但這些表示并不非法

c語言沒有指定char類型的變量是無符號數(shù)(unsigned)還是有符號數(shù)(signed)斩松,當把一個char類型轉(zhuǎn)換為int時,其結(jié)果在不同的機器上不同觉既,可能為正惧盹,可能為負乳幸,這反映了不同機器結(jié)構(gòu)之間的區(qū)別。

某些機器上钧椰,如果char類型值最左一位為1粹断,則轉(zhuǎn)換為負整數(shù)(進行符號擴展),在某些機器上嫡霞,char類型值左邊填0瓶埋,則結(jié)果為正

將字符型轉(zhuǎn)換為整形時,注意:

不允許使用無意義的表達式诊沪,如1.把flaot類型的表達式作為下標养筒,

2.%只能對整形,

變量的存儲類別:1.靜態(tài)存儲區(qū):存儲全局變量端姚,靜態(tài)存儲變量

2.動態(tài)存儲區(qū):函數(shù)的形參晕粪,局部變量,現(xiàn)場保護數(shù)據(jù)

在C語言中渐裸,變量和函數(shù)有數(shù)據(jù)類型和數(shù)據(jù)存儲類別

數(shù)據(jù)類型:int ,char, float ,double

存儲類別:auto static register extern

自動變量如果沒有賦初值巫湘,其存儲單元中將是隨機值。?

就靜態(tài)變量而言昏鹃,如果定義時沒有賦初值剩膘,系統(tǒng)將自動賦0。

賦初值只在函數(shù)第一次調(diào)用時起作用盆顾,以后調(diào)用都按前一次調(diào)用保留的值使用

全局變量:在函數(shù)外定義,可在本文件所有函數(shù)公用

有效范圍:從定義變量位置開始到本源文件結(jié)束畏梆,若有外部變量說明

(extern 數(shù)據(jù)類型 變量名)您宪,則從此說明到結(jié)束

若外部變量與局部變量同名,則外部變量被屏蔽奠涌,或者稱為被覆蓋宪巨。

全局變量的不利:1.占用存儲單元,

2.降低了函數(shù)的通用性溜畅,可靠性捏卓,移植性

3降低了程序清晰性,易出錯

寄存器變量:寄存器變量以寄存器為存儲單元慈格,不必訪問內(nèi)存怠晴,存取速度極快。

定義:register int a,b;? (在函數(shù)內(nèi)定義)

作用域:在函數(shù)內(nèi)有用

生存期:出函數(shù)之后浴捆,變量消失

注:只能定義2-3個寄存器變量

寄存器變量只能是char蒜田,int,或指針形






類型轉(zhuǎn)換:

自動轉(zhuǎn)換是把比較窄的操作數(shù)轉(zhuǎn)換為比較寬的操作數(shù)选泻,并且不丟失信息的轉(zhuǎn)換了冲粤。

針對可能導致信息丟失的表達式美莫,編譯器會給出警告,但不非法梯捕,如“:

把較長的整形數(shù)值賦給較短的整形變量厢呵,把浮點型賦給整形


二元運算符(具有兩個操作數(shù)的運算符)的兩個操作數(shù)如果具有不同類型,那么在進行運算之前傀顾,先把較低的轉(zhuǎn)換為較較高的

例子一:C語言沒有指定char類型的變量是無符號變量還是帶符號變量襟铭,當把char類型轉(zhuǎn)換為int類型時,不同電腦可能有兩種答案锣笨,為了保證程序的可移植性蝌矛,定義時最好規(guī)定signed 或unsigned

當把較長的整數(shù)轉(zhuǎn)換為較短的整數(shù)或char類型時,超出的高位將被丟棄

例子二:int i ;? ? char c;? ? i=c;? ?c=i;? ? ? ? ? ? ?執(zhí)行后错英,c的值不會改變.

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末入撒,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子椭岩,更是在濱河造成了極大的恐慌茅逮,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,718評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件判哥,死亡現(xiàn)場離奇詭異献雅,居然都是意外死亡,警方通過查閱死者的電腦和手機塌计,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評論 3 385
  • 文/潘曉璐 我一進店門挺身,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人锌仅,你說我怎么就攤上這事章钾。” “怎么了热芹?”我有些...
    開封第一講書人閱讀 158,207評論 0 348
  • 文/不壞的土叔 我叫張陵贱傀,是天一觀的道長。 經(jīng)常有香客問我伊脓,道長府寒,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,755評論 1 284
  • 正文 為了忘掉前任报腔,我火速辦了婚禮株搔,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘纯蛾。我一直安慰自己邪狞,他們只是感情好,可當我...
    茶點故事閱讀 65,862評論 6 386
  • 文/花漫 我一把揭開白布茅撞。 她就那樣靜靜地躺著帆卓,像睡著了一般巨朦。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上剑令,一...
    開封第一講書人閱讀 50,050評論 1 291
  • 那天糊啡,我揣著相機與錄音,去河邊找鬼吁津。 笑死棚蓄,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的碍脏。 我是一名探鬼主播梭依,決...
    沈念sama閱讀 39,136評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼典尾!你這毒婦竟也來了役拴?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,882評論 0 268
  • 序言:老撾萬榮一對情侶失蹤钾埂,失蹤者是張志新(化名)和其女友劉穎河闰,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體褥紫,經(jīng)...
    沈念sama閱讀 44,330評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡姜性,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,651評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了髓考。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片部念。...
    茶點故事閱讀 38,789評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖氨菇,靈堂內(nèi)的尸體忽然破棺而出儡炼,到底是詐尸還是另有隱情,我是刑警寧澤门驾,帶...
    沈念sama閱讀 34,477評論 4 333
  • 正文 年R本政府宣布,位于F島的核電站多柑,受9級特大地震影響奶是,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜竣灌,卻給世界環(huán)境...
    茶點故事閱讀 40,135評論 3 317
  • 文/蒙蒙 一聂沙、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧初嘹,春花似錦及汉、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,864評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽房铭。三九已至,卻和暖如春温眉,著一層夾襖步出監(jiān)牢的瞬間缸匪,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,099評論 1 267
  • 我被黑心中介騙來泰國打工类溢, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留凌蔬,地道東北人。 一個月前我還...
    沈念sama閱讀 46,598評論 2 362
  • 正文 我出身青樓闯冷,卻偏偏與公主長得像砂心,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子蛇耀,可洞房花燭夜當晚...
    茶點故事閱讀 43,697評論 2 351

推薦閱讀更多精彩內(nèi)容