C語言是一門面向過程的、抽象化的通用程序設計語言,廣泛應用于底層開發(fā)。C語言能以簡易的方式編譯、處理低級存儲器。C語言是僅產(chǎn)生少量的機器語言以及不需要任何運行環(huán)境支持便能運行的高效率程序設計語言。盡管C語言提供了許多低級處理的功能,但仍然保持著跨平臺的特性,以一個標準規(guī)格寫出的C語言程序可在包括類似嵌入式處理器以及超級計算機等作業(yè)平臺的許多計算機平臺上進行編譯。
當前階段,在編程領域中,C語言的運用非常之多,它兼顧了高級語言和匯編語言的優(yōu)點,相較于其它編程語言具有較大優(yōu)勢。計算機系統(tǒng)設計以及應用程序編寫是C語言應用的兩大領域。同時,C語言的普適較強,在許多計算機操作系統(tǒng)中都能夠得到適用,且效率顯著。C語言擁有經(jīng)過了漫長發(fā)展歷史的完整的理論體系,在編程語言中具有舉足輕重的地位。
C語言是一種結(jié)構(gòu)化語言,它有著清晰的層次,可按照模塊的方式對程序進行編寫,十分有利于程序的調(diào)試,且c語言的處理和表現(xiàn)能力都非常的強大,依靠非常全面的運算符和多樣的數(shù)據(jù)類型,可以輕易完成各種數(shù)據(jù)結(jié)構(gòu)的構(gòu)建,通過指針類型更可對內(nèi)存直接尋址以及對硬件進行直接操作,因此既能夠用于開發(fā)系統(tǒng)程序,也可用于開發(fā)應用軟件。通過對C語言進行研究分析,總結(jié)出其主要特點如下:
(1)簡潔的語言C語言包含的各種控制語句僅有9種,關(guān)鍵字也只有32個,程序的編寫要求不嚴格且以小寫字母為主,對許多不必要的部分進行了精簡。實際上,語句構(gòu)成與硬件有關(guān)聯(lián)的較少,且C語言本身不提供與硬件相關(guān)的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統(tǒng)所支持的各類庫進行編程,故c語言擁有非常簡潔的編譯系統(tǒng)。
(2)具有結(jié)構(gòu)化的控制語句C語言是一種結(jié)構(gòu)化的語言,提供的控制語句具有結(jié)構(gòu)化特征,如for語句、if...else語句和switch語句等??梢杂糜趯崿F(xiàn)函數(shù)的邏輯控制,方便面向過程的程序設計。
(3)豐富的數(shù)據(jù)類型C語言包含的數(shù)據(jù)類型廣泛,不僅包含有傳統(tǒng)的字符型、整型、浮點型、數(shù)組類型等數(shù)據(jù)類型,還具有其他編程語言所不具備的數(shù)據(jù)類型,其中以指針類型數(shù)據(jù)使用最為靈活,可以通過編程對各種數(shù)據(jù)結(jié)構(gòu)進行計算。
(4)豐富的運算符C語言包含34個運算符,它將賦值、括號等均視作運算符來操作,使C程序的表達式類型和運算符類型均非常豐富。
(5)可對物理地址進行直接操作C語言允許對硬件內(nèi)存地址進行直接讀寫,以此可以實現(xiàn)匯編語言的主要功能,并可直接操作硬件。C語言不但具備高級語言所具有的良好特性,又包含了許多低級語言的優(yōu)勢,故在系統(tǒng)軟件編程領域有著廣泛的應用。
(6)代碼具有較好的可移植性C語言是面向過程的編程語言,用戶只需要關(guān)注所被解決問題的本身,而不需要花費過多的精力去了解相關(guān)硬件,且針對不同的硬件環(huán)境,在用C語言實現(xiàn)相同功能時的代碼基本一致,不需或僅需進行少量改動便可完成移植,這就意味著,對于一臺計算機編寫的C程序可以在另一臺計算機上輕松地運行,從而極大的減少了程序移植的工作強度。
(7)可生成高質(zhì)量、目標代碼執(zhí)行效率高的程序與其他高級語言相比,C語言可以生成高質(zhì)量和高效率的目標代碼,故通常應用于對代碼質(zhì)量和執(zhí)行效率要求較高的嵌入式系統(tǒng)程序的編寫。
C語言作為一種非常方便的語言而得到廣泛的支持,很多硬件開發(fā)都用C語言編程,如各種單片機、DSP、ARM等。C語言程序本身不依賴于機器硬件系統(tǒng),基本上不做修改或僅做簡單的修改就可將程序從不同的系統(tǒng)移植過來直接使用。C語言提供了很多數(shù)學函數(shù)并支持浮點運算,開發(fā)效率高,可極大地縮短開發(fā)時間,增加程序可讀性和可維護性。單片機的C51編程與用匯編ASM-51編程相比,有如下優(yōu)點:
①對單片機的指令系統(tǒng)不要求有任何的了解,就可以用C語言直接編程操作單片機。
②寄存器分配、不同存儲器的尋址及數(shù)據(jù)類型等細節(jié)完全由編譯器自動管理。
③程序有規(guī)范的結(jié)構(gòu),可分成不同的函數(shù),可使程序結(jié)構(gòu)化。
④庫中包含許多標準子程序,具有較強的數(shù)據(jù)處理能力,使用方便。
⑤具有方便的模塊化編程技術(shù),使已編好的程序很容易移植。
C語言常用語法不多,尤其是單片機的C語言常用語法更少,初學者沒有必要再系統(tǒng)地將C語言重學一遍,只要跟著我們的教程學下去,當遇到難點時,停下來適當?shù)夭殚咰語言書籍里的相關(guān)部分,便會很容易掌握,而且可以馬上應用到實踐當中,且記憶深刻。C語言僅僅是一個開發(fā)工具,其本身并不難,難的是如何在將來開發(fā)龐大系統(tǒng)中靈活運用C語言的正確邏輯編寫出結(jié)構(gòu)完善的程序。在開始學習之前,首先大家要有十足的信心,要有拿不下它誓不罷休的強烈愿望,我相信你們能行,你們要更加相信自己能行!