有途網(wǎng)

c語言關(guān)鍵字有哪些

徐克達(dá)2022-02-10 13:45:11

C語言是一門面向過程的計(jì)算機(jī)編程語言,與C++、Java等面向?qū)ο缶幊陶Z言有所不同。C語言的設(shè)計(jì)目標(biāo)是提供一種能以簡易的方式編譯、處理低級(jí)存儲(chǔ)器、僅產(chǎn)生少量的機(jī)器碼以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的編程語言。那么C語言的關(guān)鍵有哪些呢?讓我們一起來看看吧!

c語言關(guān)鍵字有哪些

C語言關(guān)鍵字有哪些

數(shù)據(jù)類型關(guān)鍵字

short:修飾int,短整型數(shù)據(jù),可省略被修飾的int。(K&R時(shí)期引入)

long:修飾int,長整型數(shù)據(jù),可省略被修飾的int。(K&R時(shí)期引入)

long long:修飾int,超長整型數(shù)據(jù),可省略被修飾的int。(C99標(biāo)準(zhǔn)新增)

signed:修飾整型數(shù)據(jù),有符號(hào)數(shù)據(jù)類型。(C89標(biāo)準(zhǔn)新增)

unsigned:修飾整型數(shù)據(jù),無符號(hào)數(shù)據(jù)類型。(K&R時(shí)期引入)

restrict:用于限定和約束指針,并表明指針是訪問一個(gè)數(shù)據(jù)對(duì)象的唯一且初始的方式。(C99標(biāo)準(zhǔn)新增)

復(fù)雜類型關(guān)鍵字

struct:結(jié)構(gòu)體聲明。(K&R時(shí)期引入)

union:聯(lián)合體聲明。(K&R時(shí)期引入)

enum:枚舉聲明。(C89標(biāo)準(zhǔn)新增)

typedef:聲明類型別名。(K&R時(shí)期引入)

sizeof:得到特定類型或特定類型變量的大小。(K&R時(shí)期引入)

inline:內(nèi)聯(lián)函數(shù)用于取代宏定義,會(huì)在任何調(diào)用它的地方展開。(C99標(biāo)準(zhǔn)新增)

存儲(chǔ)級(jí)別關(guān)鍵字

auto:指定為自動(dòng)變量,由編譯器自動(dòng)分配及釋放。通常在棧上分配。與static相反。當(dāng)變量未指定時(shí)默認(rèn)為auto。(K&R時(shí)期引入)

static:指定為靜態(tài)變量,分配在靜態(tài)變量區(qū),修飾函數(shù)時(shí),指定函數(shù)作用域?yàn)槲募?nèi)部。(K&R時(shí)期引入)

register:指定為寄存器變量,建議編譯器將變量存儲(chǔ)到寄存器中使用,也可以修飾函數(shù)形參,建議編譯器通過寄存器而不是堆棧傳遞參數(shù)。(K&R時(shí)期引入)

extern:指定對(duì)應(yīng)變量為外部變量,即標(biāo)示變量或者函數(shù)的定義在別的文件中,提示編譯器遇到此變量和函數(shù)時(shí)在其他模塊中尋找其定義。(K&R時(shí)期引入)

const:指定變量不可被當(dāng)前線程改變(但有可能被系統(tǒng)或其他線程改變)。(C89標(biāo)準(zhǔn)新增)

volatile:指定變量的值有可能會(huì)被系統(tǒng)或其他線程改變,強(qiáng)制編譯器每次從內(nèi)存中取得該變量的值,阻止編譯器把該變量優(yōu)化成寄存器變量。(C89標(biāo)準(zhǔn)新增)

流程控制關(guān)鍵字

跳轉(zhuǎn)結(jié)構(gòu)

return:用在函數(shù)體中,返回特定值(如果是void類型,則不返回函數(shù)值)。(K&R時(shí)期引入)

continue:結(jié)束當(dāng)前循環(huán),開始下一輪循環(huán)。(K&R時(shí)期引入)

break:跳出當(dāng)前循環(huán)或switch結(jié)構(gòu)。(K&R時(shí)期引入)

goto:無條件跳轉(zhuǎn)語句。(K&R時(shí)期引入)

分支結(jié)構(gòu)

if:條件語句,后面不需要放分號(hào)。(K&R時(shí)期引入)

else:條件語句否定分支(與if連用)。(K&R時(shí)期引入)

switch:開關(guān)語句(多重分支語句)。(K&R時(shí)期引入)

case:開關(guān)語句中的分支標(biāo)記,與switch連用。(K&R時(shí)期引入)

default:開關(guān)語句中的“其他”分支,可選。(K&R時(shí)期引入)

C語言的優(yōu)缺點(diǎn)

優(yōu)點(diǎn):

其一,廣泛性。C 語言的運(yùn)算范圍的大小直接決定了其優(yōu)劣性。C 語言中包含了34種運(yùn)算符,因此運(yùn)算范圍要超出許多其它語言,此外其運(yùn)算結(jié)果的表達(dá)形式也十分豐富。此外,C 語言包含了字符型、指針型等多種數(shù)據(jù)結(jié)構(gòu)形式,因此,更為龐大的數(shù)據(jù)結(jié)構(gòu)運(yùn)算它也可以應(yīng)付。 [3]

其二,簡潔性。9 類控制語句和32個(gè)KEYWORDS是C語言所具有的基礎(chǔ)特性,使得其在計(jì)算機(jī)應(yīng)用程序編寫中具有廣泛的適用性,不僅可以適用廣大編程人員的操作,提高其工作效率,同 時(shí)還能夠支持高級(jí)編程,避免了語言切換的繁瑣。

其三,結(jié)構(gòu)完善。C語言是一種結(jié)構(gòu)化語言,它可以通過組建模塊單位的形式實(shí)現(xiàn)模塊化的應(yīng)用程序,在系統(tǒng)描述方面具有顯著優(yōu)勢(shì),同時(shí)這一特性也使得它能夠適應(yīng)多種不同的編程要求,且執(zhí)行效率高。

缺點(diǎn):

1、 C語言的缺點(diǎn)主要表現(xiàn)在數(shù)據(jù)的封裝性上,這一點(diǎn)使得C在數(shù)據(jù)的安全性上有很大缺陷,這也是C和C++的一大區(qū)別。

2、 C語言的語法限制不太嚴(yán)格,對(duì)變量的類型約束不嚴(yán)格,影響程序的安全性,對(duì)數(shù)組下標(biāo)越界不作檢查等。從應(yīng)用的角度,C語言比其他高級(jí)語言較難掌握。也就是說,對(duì)用C語言的人,要求對(duì)程序設(shè)計(jì)更熟練一些。

熱門推薦

最新文章