最新国产在线不卡AV,国产又爽又黄的视频免费看,精品综合久久久久久97,日韩欧美高清中文字幕免费一区二区

            科普

            C語言的特點(diǎn)及構(gòu)成_C語言的優(yōu)缺點(diǎn) IT知識

            電腦知識優(yōu)爾供稿

            C語言是一門面向過程的、抽象化的通用程序設(shè)計語言,廣泛應(yīng)用于底層開發(fā)。C語言能以簡易的方式編譯、處理低級存儲器。下面是9252兒童網(wǎng)小編為大家整理的C語言的特點(diǎn)及構(gòu)成,希望對你們有幫助。

            C語言的特點(diǎn)

            1、C語言主要特點(diǎn)

            (1)簡潔的語言

            C語言包含的各種控制語句僅有9種,關(guān)鍵字也只有32個,程序的編寫要求不嚴(yán)格且以小寫字母為主,對許多不必要的部分進(jìn)行了精簡。實(shí)際上,語句構(gòu)成與硬件有關(guān)聯(lián)的較少,且C語言本身不提供與硬件相關(guān)的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統(tǒng)所支持的各類庫進(jìn)行編程,故c語言擁有非常簡潔的編譯系統(tǒng)。

            (2)具有結(jié)構(gòu)化的控制語句

            C語言是一種結(jié)構(gòu)化的語言,提供的控制語句具有結(jié)構(gòu)化特征,如for語句、if...else語句和switch語句等??梢杂糜趯?shí)現(xiàn)函數(shù)的邏輯控制,方便面向過程的程序設(shè)計。

            (3)豐富的數(shù)據(jù)類型

            C語言包含的數(shù)據(jù)類型廣泛,不僅包含有傳統(tǒng)的字符型、整型、浮點(diǎn)型、數(shù)組類型等數(shù)據(jù)類型,還具有其他編程語言所不具備的數(shù)據(jù)類型,其中以指針類型數(shù)據(jù)使用最為靈活,可以通過編程對各種數(shù)據(jù)結(jié)構(gòu)進(jìn)行計算。

            (4)豐富的運(yùn)算符

            C語言包含34個運(yùn)算符,它將賦值、括號等均視作運(yùn)算符來操作,使C程序的表達(dá)式類型和運(yùn)算符類型均非常豐富。

            (5)可對物理地址進(jìn)行直接操作

            C語言允許對硬件內(nèi)存地址進(jìn)行直接讀寫,以此可以實(shí)現(xiàn)匯編語言的主要功能,并可直接操作硬件。C語言不但具備高級語言所具有的良好特性,又包含了許多低級語言的優(yōu)勢,故在系統(tǒng)軟件編程領(lǐng)域有著廣泛的應(yīng)用。

            (6)代碼具有較好的可移植性

            C語言是面向過程的編程語言,用戶只需要關(guān)注所被解決問題的本身,而不需要花費(fèi)過多的精力去了解相關(guān)硬件,且針對不同的硬件環(huán)境,在用C語言實(shí)現(xiàn)相同功能時的代碼基本一致,不需或僅需進(jìn)行少量改動便可完成移植,這就意味著,對于一臺計算機(jī)編寫的C程序可以在另一臺計算機(jī)上輕松地運(yùn)行,從而極大的減少了程序移植的工作強(qiáng)度。

            (7)可生成高質(zhì)量、目標(biāo)代碼執(zhí)行效率高的程序

            與其他高級語言相比,C語言可以生成高質(zhì)量和高效率的目標(biāo)代碼,故通常應(yīng)用于對代碼質(zhì)量和執(zhí)行效率要求較高的嵌入式系統(tǒng)程序的編寫。

            2、C語言特有特點(diǎn)

            C語言是普適性最強(qiáng)的一種計算機(jī)程序編輯語言,它不僅可以發(fā)揮出高級編程語言的功用,還具有匯編語言的優(yōu)點(diǎn),因此相對于其它編程語言,它具有自己獨(dú)特的特點(diǎn)。具體體現(xià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)付。

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

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

            C語言基本構(gòu)成

            數(shù)據(jù)類型

            C的數(shù)據(jù)類型包括:整型(short、int、long、long long)、字符型(char)、實(shí)型或浮點(diǎn)型(單精度float和雙精度double)、枚舉類型(enum)、數(shù)組類型、結(jié)構(gòu)體類型(struct)、共用體類型(union)、指針類型和空類型(void)。

            常量與變量

            常量其值不可改變,符號常量名通常用大寫。

            變量是以某標(biāo)識符為名字,其值可以改變的量。標(biāo)識符是以字母或下劃線開頭的一串由字母、數(shù)字或下劃線構(gòu)成的序列,請注意第一個字符必須為字母或下劃線,否則為不合法的變量名。變量在編譯時為其分配相應(yīng)存儲單元。

            數(shù)組

            如果一個變量名后面跟著一個有數(shù)字的中括號,這個聲明就是數(shù)組聲明。字符串也是一種數(shù)組。它們以ASCII的NULL作為數(shù)組的結(jié)束。要特別注意的是,中括號內(nèi)的索引值是從0算起的。

            指針

            如果一個變量聲明時在前面使用__號,表明這是個指針型變量。換句話說,該變量存儲一個地址,而__(此處特指單目運(yùn)算符__,下同。C語言中另有雙目運(yùn)算符__)則是取內(nèi)容操作符,意思是取這個內(nèi)存地址里存儲的內(nèi)容。指針是C語言區(qū)別于其他同時代高級語言的主要特征之一。

            指針不僅可以是變量的地址,還可以是數(shù)組、數(shù)組元素、函數(shù)的地址。通過指針作為形式參數(shù)可以在函數(shù)的調(diào)用過程得到一個以上的返回值,不同于return(z)這樣的僅能得到一個返回值。

            指針是一把雙刃劍,許多操作可以通過指針自然的表達(dá),但是不正確的或者過分的使用指針又會給程序帶來大量潛在的錯誤。

            字符串

            C語言的字符串其實(shí)就是以'\0'字符結(jié)尾的char型數(shù)組,使用字符型并不需要引用庫,但是使用字符串就需要C標(biāo)準(zhǔn)庫里面的一些用于對字符串進(jìn)行操作的函數(shù)。它們不同于字符數(shù)組。使用這些函數(shù)需要引用頭文件。

            文件輸入/輸出

            在C語言中,輸入和輸出是經(jīng)由標(biāo)準(zhǔn)庫中的一組函數(shù)來實(shí)現(xiàn)的。在ANSI C中,這些函數(shù)被定義在頭文件;中。

            標(biāo)準(zhǔn)輸入/輸出

            有三個標(biāo)準(zhǔn)輸入/輸出是標(biāo)準(zhǔn)I/O庫預(yù)先定義的:

            stdin標(biāo)準(zhǔn)輸入

            stdout標(biāo)準(zhǔn)輸出

            stderr輸入輸出錯誤

            運(yùn)算

            C語言的運(yùn)算非常靈活,功能十分豐富,運(yùn)算種類遠(yuǎn)多于其它程序設(shè)計語言。在表達(dá)式方面較其它程序語言更為簡潔,如自加、自減、逗號運(yùn)算和三目運(yùn)算使表達(dá)式更為簡單,但初學(xué)者往往會覺的這種表達(dá)式難讀,關(guān)鍵原因就是對運(yùn)算符和運(yùn)算順序理解不透不全。當(dāng)多種不同運(yùn)算組成一個運(yùn)算表達(dá)式,即一個運(yùn)算式中出現(xiàn)多種運(yùn)算符時,運(yùn)算的優(yōu)先順序和結(jié)合規(guī)則就會顯得十分重要。

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

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

            1、簡潔緊湊、靈活方便

            C語言一共只有32個關(guān)鍵字,9種控制語句,程序書寫形式自由,區(qū)分大小寫。把高級語言的基本結(jié)構(gòu)和語句與低級語言的實(shí)用性結(jié)合起來。C 語言可以像匯編語言一樣對位、字節(jié)和地址進(jìn)行操作,而這三者是計算機(jī)最基本的工作單元。

            2、運(yùn)算符豐富

            C語言的運(yùn)算符包含的范圍很廣泛,共有34種運(yùn)算符。C語言把括號、賦值、強(qiáng)制類型轉(zhuǎn)換等都作為運(yùn)算符處理。從而使C語言的運(yùn)算類型極其豐富,表達(dá)式類型多樣化。靈活使用各種運(yùn)算符可以實(shí)現(xiàn)在其它高級語言中難以實(shí)現(xiàn)的運(yùn)算。

            3、數(shù)據(jù)類型豐富

            C語言的數(shù)據(jù)類型有:整型、實(shí)型、字符型、數(shù)組類型、指針類型、結(jié)構(gòu)體類型、共用體類型等。能用來實(shí)現(xiàn)各種復(fù)雜的數(shù)據(jù)結(jié)構(gòu)的運(yùn)算。并引入了指針概念,使程序效率更高。

            4、表達(dá)方式靈活實(shí)用

            C語言提供多種運(yùn)算符和表達(dá)式值的方法,對問題的表達(dá)可通過多種途徑獲得,其程序設(shè)計更主動、靈活。它語法限制不太嚴(yán)格,程序設(shè)計自由度大,如對整型量與字符型數(shù)據(jù)及邏輯型數(shù)據(jù)可以通用等。

            5、允許直接訪問物理地址,對硬件進(jìn)行操作

            由于C語言允許直接訪問物理地址,可以直接對硬件進(jìn)行操作,因此它既具有高級語言的功能,又具有低級語言的許多功能,能夠像匯編語言一樣對位(bit)、字節(jié)和地址進(jìn)行操作,而這三者是計算機(jī)最基本的工作單元,可用來寫系統(tǒng)軟件。

            6、生成目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高

            C語言描述問題比匯編語言迅速,工作量小、可讀性好,易于調(diào)試、修改和移植,而代碼質(zhì)量與匯編語言相當(dāng)。C語言一般只比匯編程序生成的目標(biāo)代碼效率低10%~20%。

            7、可移植性好

            C語言在不同機(jī)器上的C編譯程序,86%的代碼是公共的,所以C語言的編譯程序便于移植。在一個環(huán)境上用C語言編寫的程序,不改動或稍加改動,就可移植到另一個完全不同的環(huán)境中運(yùn)行。

            8、表達(dá)力強(qiáng)

            C語言有豐富的數(shù)據(jù)結(jié)構(gòu)和運(yùn)算符。包含了各種數(shù)據(jù)結(jié)構(gòu),如整型、數(shù)組類型、指針類型和聯(lián)合類型等,用來實(shí)現(xiàn)各種數(shù)據(jù)結(jié)構(gòu)的運(yùn)算。C語言的運(yùn)算符有34種,范圍很寬,靈活使用各種運(yùn)算符可以實(shí)現(xiàn)難度極大的運(yùn)算。

            C語言能直接訪問硬件的物理地址,能進(jìn)行位(bit)操作。兼有高級語言和低級語言的許多優(yōu)點(diǎn)。

            它既可用來編寫系統(tǒng)軟件,又可用來開發(fā)應(yīng)用軟件,已成為一種通用程序設(shè)計語言。

            另外C語言具有強(qiáng)大的圖形功能,支持多種顯示器和驅(qū)動器。且計算功能、邏輯判斷功能強(qiáng)大。

            c語言的缺點(diǎn)

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

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

              為你推薦