如何學(xué)習(xí)C語(yǔ)言,入門需要了解哪些知識(shí)呢?
如何學(xué)習(xí)C語(yǔ)言,入門需要了解哪些知識(shí)呢?C語(yǔ)言是編程人員都需要掌握的語(yǔ)言,也是基礎(chǔ)語(yǔ)言,而對(duì)于一種新語(yǔ)言的入門,往往有一定的困難,其實(shí)是人們心中的疙瘩,對(duì)新事物的恐懼心理,其實(shí)學(xué)習(xí)C語(yǔ)言并不難。鄭州北大青鳥(niǎo)翔天信鴿就為大家詳細(xì)講解C語(yǔ)言的入門。
1、變量名與變量值
變量名實(shí)際上是一個(gè)符號(hào)地址。程序編譯時(shí),系統(tǒng)給變量開(kāi)辟該變量對(duì)應(yīng)類型所需的內(nèi)存空間(用于存儲(chǔ)變量值),然后由系統(tǒng)建立一個(gè)從變量名到該內(nèi)存空間的首地址的映射,這樣就可以通過(guò)變量名訪問(wèn)到變量值了。
變量名由數(shù)字、字母和下劃線組成。大小寫敏感,不能以數(shù)字開(kāi)頭。變量名的長(zhǎng)度(字符個(gè)數(shù))沒(méi)有硬性的規(guī)定,只是不同的C編譯器可能會(huì)有不同要求。
C語(yǔ)言中,使用變量之前必須定義該變量,否則編譯出錯(cuò)。定義變量時(shí)須寫明變量所屬類型。程序編譯時(shí),會(huì)根據(jù)變量的類型來(lái)決定為該變量開(kāi)辟多大的內(nèi)存空間,同時(shí)還可以檢查運(yùn)算的合法性。比如實(shí)型數(shù)據(jù)之間不能做求余數(shù)的操作。
2、整型數(shù)據(jù)
C語(yǔ)言中,整型數(shù)據(jù)的類別有三種:short,int,long;屬性有兩種:signed,unsigned。共有六種組合。
整型數(shù)據(jù)類型的長(zhǎng)度:C標(biāo)準(zhǔn)沒(méi)有硬性規(guī)定每種類型的長(zhǎng)度,只是規(guī)定:long的長(zhǎng)度要不小于int;short的長(zhǎng)度不大于int。一般的C編譯器都會(huì)以一個(gè)機(jī)器字的存放一個(gè)int型數(shù)據(jù)。
3、變量初始化
變量的初始化不是在編譯期間完成內(nèi)存空間的分配(只有靜態(tài)變量和外部變量是在編譯期間初始化),而是在程序運(yùn)行時(shí)執(zhí)行函數(shù)時(shí)才賦值。
4、C語(yǔ)言的變量的存儲(chǔ)類型
C語(yǔ)言的變量存儲(chǔ)類型有很多種分法,根據(jù)生命周期來(lái)分可分為:動(dòng)態(tài)變量和靜態(tài)變量;根據(jù)使用域來(lái)分可分為:局部變量和全局變量(又叫內(nèi)部變量和外部變量)
a)、動(dòng)態(tài)變量和靜態(tài)變量。
動(dòng)態(tài)變量------變量所占空間是動(dòng)態(tài)分配的,即只有到使用到某個(gè)變量時(shí),才動(dòng)態(tài)的給該變量分配內(nèi)存空間,用完后還要及時(shí)收回。比如函數(shù)的形參及函數(shù)內(nèi)的局部變量。其代碼表現(xiàn)形式為關(guān)鍵字"auto"+變量類型名+變量名,一般情況下關(guān)鍵字"auto"省略不寫。也就是說(shuō)我們平時(shí)用得最多的就是動(dòng)態(tài)變量。動(dòng)態(tài)變量存放于內(nèi)存的棧區(qū)和堆區(qū)。
靜態(tài)變量------變量所占空間是靜態(tài)的,即程序自始至終一直存在。代碼表現(xiàn)形式為關(guān)鍵字"static"+變量類型名+變量名,靜態(tài)變量的初始化是在編譯期完成的,且只初始化一次,程序執(zhí)行時(shí)不再對(duì)靜態(tài)變量進(jìn)行賦初值。
b)、局部變量和全局變量(又叫內(nèi)部變量和外部變量)
局部變量------定義在函數(shù)體內(nèi)部的變量,所以又叫內(nèi)部變量。其作用域僅限于聲明該局部變量的函數(shù)體內(nèi)部。程序運(yùn)行時(shí),在動(dòng)態(tài)存儲(chǔ)區(qū)為局部變量分配空間(靜態(tài)局部變量除外)。
一般情況下使用的局部變量都是動(dòng)態(tài)變量,但并不表示沒(méi)有靜態(tài)的局部變量。靜態(tài)局部變量因?yàn)槭庆o態(tài)的所以會(huì)被存在靜態(tài)存儲(chǔ)區(qū),這就意味著即使函數(shù)調(diào)用結(jié)束,它的值還仍然存在。利用這一特性我們可以用靜態(tài)局部變量來(lái)保留函數(shù)上一次的執(zhí)行結(jié)果
全局變量------定義在函數(shù)體外部的變量,所以又叫外部變量。其作用域?yàn)樵撊肿兞康穆暶魈幰恢钡匠绦蚪Y(jié)束。與局部變量不同的是,全局變量存在靜態(tài)存儲(chǔ)區(qū),在編譯期就被分配空間。
外部變量可以用"extern"關(guān)鍵字來(lái)擴(kuò)展作用域。例如:一int型的外部變量A被定義在程序的中部,那該外部變量的作用域是不包含其以上的函數(shù)的,如果在文件開(kāi)頭使用"extern A"來(lái)聲明該外部變量,那該外部變量的作用域變會(huì)被擴(kuò)大到整個(gè)文件。使用"extern"還可以把外部變量的作用域擴(kuò)大到另外的文件中。例如:在a.c中有一外部變量A,那在b.c中使用extern A聲明后A在b.c中也可以使用了。
當(dāng)然,C語(yǔ)言并不是這幾句話就可以說(shuō)清的,IT技術(shù)最重要的一點(diǎn)是實(shí)踐,只有實(shí)踐過(guò)了才能算真正掌握技術(shù)。
本文由站河南北大青鳥(niǎo)校區(qū)整編而成,如需了解更多IT資訊類的文章、新聞、課程和學(xué)習(xí)技巧、就業(yè)案例、招生詳情等問(wèn)題,可以對(duì)在線咨詢老師進(jìn)行一對(duì)一問(wèn)答!
推薦資訊
- IT培訓(xùn)火爆,網(wǎng)絡(luò)工程師培訓(xùn)一枝獨(dú)... 2012-06-01
- 鄭州北大青鳥(niǎo)翔天信鴿軟件學(xué)院8月... 2020-08-04
- 鄭州開(kāi)設(shè)計(jì)算機(jī)專業(yè)的學(xué)校... 2019-07-24
- 女孩子在IT行業(yè)能做什么... 2012-12-11
- 祝賀成功舉辦北大青鳥(niǎo)翔天信鴿學(xué)... 2013-07-30
熱點(diǎn)資訊
- 河南鄭州大學(xué)生短期IT技能培訓(xùn)機(jī)... 2025-02-10
- 河南適合學(xué)專業(yè)技術(shù)的學(xué)校有哪些... 2025-02-08
- 在河南孩子想學(xué)計(jì)算機(jī)去哪學(xué)呢... 2025-01-09
- 計(jì)算機(jī)專業(yè)包含那些專業(yè)課程呢... 2025-01-03
- 年后不想打工學(xué)什么技術(shù)好... 2025-01-03