有考網(wǎng)有考網(wǎng)合作機(jī)構(gòu)>昆明培訓(xùn)學(xué)校>昆明盤(pán)龍區(qū)金尚達(dá)內(nèi)IT教育培訓(xùn)
昆明盤(pán)龍區(qū)金尚達(dá)內(nèi)IT教育培訓(xùn)
全國(guó)統(tǒng)一學(xué)習(xí)專(zhuān)線(xiàn) 8:30-21:00
位置:有考網(wǎng) > 計(jì)算機(jī)類(lèi)>C/C++開(kāi)發(fā)> 什么是C語(yǔ)言?  正文

什么是C語(yǔ)言?

發(fā)布時(shí)間:2021-12-30 15:56:24來(lái)源:轉(zhuǎn)載

C語(yǔ)言是一種面向過(guò)程的語(yǔ)言,目前主要應(yīng)用于嵌入式開(kāi)發(fā),因?yàn)樽烂骈_(kāi)發(fā)有更的面向?qū)ο蟮拈_(kāi)發(fā)技術(shù)。面向過(guò)程就是語(yǔ)言的設(shè)計(jì)流程是按照事物的時(shí)序來(lái)進(jìn)行開(kāi)發(fā)的,因此,當(dāng)項(xiàng)目非常大的時(shí)候,維護(hù)起來(lái)就比較困難。

1.設(shè)計(jì)目標(biāo)

是為提供一種能以簡(jiǎn)易的方式編譯、處理低級(jí)存儲(chǔ)器、僅產(chǎn)生少量的機(jī)器碼以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的編程語(yǔ)言。相對(duì)于匯編語(yǔ)言,C語(yǔ)言標(biāo)志易懂、上手快、可讀性好、易于調(diào)試、修改和移植,而代碼質(zhì)量與匯編語(yǔ)言相當(dāng)。一般C語(yǔ)言代碼只比匯編語(yǔ)言代碼生成的目標(biāo)代碼效率低10%~20%。在當(dāng)前單片機(jī)性能大幅提升、存儲(chǔ)器大幅拉升的情況下,這點(diǎn)犧牲換來(lái)了極大的提高了開(kāi)發(fā)速度、降低了編程難度,完全值得。

2.主要特點(diǎn)

簡(jiǎn)潔 關(guān)鍵字非常少,而且意義明確,易懂易記。比如int是integer,char是character,float等等。

運(yùn)算符豐富 C語(yǔ)言包含34個(gè)運(yùn)算符,它將賦值、括號(hào)等均視作運(yùn)算符來(lái)操作,使C程序的表達(dá)式類(lèi)型和運(yùn)算符類(lèi)型均非常豐富。并且運(yùn)算規(guī)則不是那么嚴(yán)格,編程非常靈活。比如一個(gè)字符char可以不進(jìn)行轉(zhuǎn)換直接賦值給整數(shù)int,枚舉型直接賦值給char或int等,這些操作在高級(jí)語(yǔ)言里如果不進(jìn)行明確轉(zhuǎn)換都是不允許直接賦值的。

地址讀寫(xiě) 在嵌入式系統(tǒng)的應(yīng)用中,必須要涉及對(duì)寄存器的訪(fǎng)問(wèn)。C語(yǔ)言可以便捷的實(shí)現(xiàn)這個(gè)功能。比如,ARM的CMSIS通用接口代碼里,就用C的結(jié)構(gòu)定義了所有片上的寄存器,對(duì)這些寄存器的訪(fǎng)問(wèn),和訪(fǎng)問(wèn)變量沒(méi)什么兩樣。如定義一個(gè)指向寄存器的變量。

3.注意事項(xiàng)

C語(yǔ)言也是在不斷的發(fā)展變化,因此也有許多不同的版本,如C89、C90、C95、C99等。這要求我們?cè)趯?shí)際應(yīng)用的時(shí)候同樣要注意版本的兼容性。這一點(diǎn)很容易被初學(xué)者忽略。比如C99支持在函數(shù)中任意位置定義變量,但是早期的版本就不支持。

4.難不難學(xué)

任意事物,只要下功夫,肯定會(huì)有收獲。況且現(xiàn)在程序員那么多,說(shuō)明了只要學(xué)習(xí),肯定是很掌握的。當(dāng)然熟練的程度,要取決于做項(xiàng)目的多少,熟能生巧。建議初學(xué)者理論聯(lián)系實(shí)際,多做實(shí)際,學(xué)好它并不難。

相關(guān)內(nèi)容: C++開(kāi)發(fā) C語(yǔ)言開(kāi)發(fā) C語(yǔ)言

同類(lèi)文章
相關(guān)熱詞