- 相關推薦
C語言的元素有哪些
C語言是一門面向過程、抽象化的通用程序設計語言,廣泛應用于底層開發(fā)。下面是小編為大家?guī)淼腃語言的C語言的元素有哪些,歡迎閱讀。
一、C語言
C程序中定義了兩個字符集,C字符集和可表示字符集。C字符集包括字母、數(shù)字和與C編譯程序有特殊含義的標點符號,C程序就是由C字符集中的字符組合成有意義的語句而構成的。
C字符集是可表示字符集的一個子集?杀硎咀址ㄋ凶帜浮(shù)字以及用戶能以圖形方式用一個字符表示出來的符號。字符集的范圍取決于所使用的終端、控制臺或字符設備的類型。
除了串直接量、字符常量和注解可以使用任何可表示字符以外,C程序只能使用c字符集中的字符。C字符集中的每個字符對C編譯程序來說都有其確切的含義,當編譯程序遇到對字符的錯誤使用或使用了不屬于C字符集中的字符時,它將產(chǎn)生錯誤信息。
二、字母和數(shù)字
C的字符集包括英語的大小寫字母和10個阿拉伯數(shù)字。
大寫英語字母:
A-Z
小寫英語字母:
a-z
10個阿拉伯數(shù)字:
0123456789這些字母和數(shù)字可以用來組成在本章后面的部分中所描述的常量、標識符和關鍵字。
C編譯程序區(qū)分大小寫字母。如果用小寫的“a”代表一給定的項,那么就不能用大寫的“A”來替代之,而必須用小寫。
三、空白字符
空格、制表符、跳行、回車符、換頁、垂直制表符和換行符號都稱為空白字符,因為輸出時它們在字與字之間、行與行之間都起到類似于空格的功能。這些字符把用戶定義的項,如常量和標識符,從程序的其它項中區(qū)分開來。
除非把空白字符用在字符常量或串直接量中,否則C編譯程序是忽略這些字符的,這就是說程序員可以使用額外的空白符增加程序的可讀性。注釋(見2.6節(jié))也被視為空白字符。
四、標點和特殊字符
C字符集中的標點和特殊字符用于許多目的,從組織程序的正文到定義要求編譯程序執(zhí)行的任務或指定被編譯的程序要完成的任務。
對于C編譯程序來說,這些字符都有其特殊的含意。本手冊描述了它們的用途。可表示字符集中那些未出現(xiàn)在該表中的標點字符僅能用在串直接量、字符常量和注解中。
五、轉(zhuǎn)義序列
轉(zhuǎn)義序列是表示串直接量和字符常量中空白字符和非圖形宇符的特殊的字符組合。典型的用途是用它們來指明動作,例如回車或制表,在終端和打印機上移動,并提供有特殊含義的特殊符號的字面表示,例如雙引號()字符。轉(zhuǎn)義序列由反斜線后面跟以一個字母或數(shù)字的序列組成。
如果反斜線之后的字符未出現(xiàn)在上表中,那么反斜線就被忽略過去。而該字符就是它的字面表示。例如,在串或字符中,“V”就是表示“C”
序列“ddd”和“xdd”允許用三位八進制數(shù)字或兩位十六進制數(shù)字給出ASCII字符集中的任何字符。例如退格符可以用“10”和“x08”給出,ASCII的空字符可以用或“xO”給出。
在八進制轉(zhuǎn)義序列中只能出現(xiàn)八進制數(shù)字,并且至少要有一位數(shù)字,但可以小于三位數(shù)字,例如,退格字符可以由“0”給出。類似地,十六進制序列應至少包括一位數(shù)字,但第二個數(shù)字可以省去,退格字符的十六進制轉(zhuǎn)義字符可以寫為“x8”。但是,在串中使用八進制或十六進制轉(zhuǎn)義序列時完整地給出轉(zhuǎn)義序列則更為安全一些,否則,如果序列后緊跟著的字符是八進制數(shù)字或十六進制數(shù)字時,該字符就可能被解釋成序列的一部分。
轉(zhuǎn)義序列允許把非圖形控制字符送到顯示設備上,例如“33”常用作終端或打印機控制命令的第一字符。非圖形字符必須用轉(zhuǎn)義序列表示,這種字符出現(xiàn)在C程序中時將產(chǎn)生難以預料的結果。
用于引入轉(zhuǎn)義序列的反斜線還可以在串或預處理程序定義中當作續(xù)行符使用。當換行符跟在反斜線之后時它將被忽略,而下一行被視為上一行的繼續(xù)。
六、運算符
運算符是指明如何把值進行傳送和賦值的特殊字符的組合,編譯程序把這種字符的組合視為一體,稱為單詞(token)。
列出了構成C運算符的字符,并給出了每個運算符的名稱。用戶必須準確地按表中所列的那樣使用運算符,多字符的運算符之間不能插入空白字符。運算符sizeof不包括在該表中它由關鍵字而不是由符號組成。
C語言優(yōu)缺點
1. 簡潔緊湊、靈活方便
C語言一共只有32個關鍵字,9種控制語句,程序書寫形式自由,主要用小寫字母表示。它把高級語言的基本結構和語句與低級語言的實用性結合起來。 C 語言可以像匯編語言一樣對位、字節(jié)和地址進行操作,而這三者是計算機最基本的工作單元。
2. 運算符豐富
C語言的運算符包含的范圍很廣泛,共有34種運算符。C語言把括號、賦值、強制類型轉(zhuǎn)換等都作為運算符處理。從而使C語言的運算類型極其豐富,表達式類型多樣化。靈活使用各種運算符可以實現(xiàn)在其它高級語言中難以實現(xiàn)的運算。
3. 數(shù)據(jù)結構豐富
C語言的數(shù)據(jù)類型有:整型、實型、字符型、數(shù)組類型、指針類型、結構體類型、共用體類型等。能用來實現(xiàn)各種復雜的數(shù)據(jù)結構的運算。并引入了指針概念,使程序效率更高。另外C語言具有強大的圖形功能,支持多種顯示器和驅(qū)動器。且計算功能、邏輯判斷功能強大。
4. C是結構式語言
結構式語言的顯著特點是代碼及數(shù)據(jù)的分隔化,即程序的各個部分除了必要的信息交流外彼此獨立。這種結構化方式可使程序?qū)哟吻逦阌谑褂、維護以及調(diào)試。C語言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便的調(diào)用,并具有多種循環(huán)、條件語句控制程序流向,從而使程序完全結構化。
5.C語法限制
C語法限制不太嚴格,程序設計自由度大 雖然C語言也是強類型語言,但它的語法比較靈活,允許程序編寫者有較大的自由度
6. C語言允許直接訪問物理地址,可以直接對硬件進行操作
由于C語言允許直接訪問物理地址,可以直接對硬件進行。
c語言的基本特性
1、高級語言:
它是把高級語言的基本結構和語句與低級語言的實用性結合起來的工作單元。
2、結構式語言:
結構式語言的顯著特點是代碼及數(shù)據(jù)的分隔化,即程序的各個部分除了必要的信息交流外彼此獨立。這種結構化方式可使程序?qū)哟吻逦,便于使用、維護以及調(diào)試。
C 語言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便的調(diào)用,并具有多種循環(huán)、條件語句控制程序流向,從而使程序完全結構化。
3、代碼級別的跨平臺:
由于標準的存在,使得幾乎同樣的C代碼可用于多種操作系統(tǒng),如Windows、DOS、UNIX等等;也適用于多種機型。C語言對編寫需要進行硬件操作的場合,優(yōu)于其它高級語言。
4、使用指針:
可以直接進行靠近硬件的操作,但是C的指針操作不做保護,也給它帶來了很多不安全的因素。C++在這方面做了改進,在保留了指針操作的同時又增強了安全性,受到了一些用戶的支持,但是,由于這些改進增加語言的復雜度,也為另一部分所詬病。
Java則吸取了C++的教訓,取消了指針操作,也取消了C++改進中一些備受爭議的地方,在安全性和適合性方面均取得良好的效果,但其本身解釋在虛擬機中運行,運行效率低于C++/C。一般而言,C,C++,java被視為同一系的語言,它們長期占據(jù)著程序使用榜的前三名。
【C語言的元素有哪些】相關文章:
C語言的缺點有哪些09-16
C語言assert的用法有哪些07-17
C語言的特點及版本有哪些08-17
C++、C語言和JAVA開發(fā)有哪些區(qū)別08-09
C語言程序設計有哪些08-03
最常用的c語言算法有哪些06-02
C語言中的重要概念有哪些08-24
經(jīng)典的C語言程序設計有哪些09-25
C語言的常用新指令有哪些09-07