每種語言都有自己的一套符號,符號是組成程序的基本單位,它是由若干字符組成的具有一定意義的最小詞法單元,如標識符、關(guān)鍵字、運算符、分隔符、常量、注釋符等。這里組成符號的字符必須是這種語言字符集中的合法字符,在C++中規(guī)定了一個自己的字符集。
2.1 C++字符集
字符是可以區(qū)分的最小單位,也是組成詞法符號的基本單位。C++的字符由下列字符組成。
1、大小寫英文字母
a~z,A~Z
2、數(shù)字字符
0~9
3、特殊符號
空格 ! # % ^ & * _ - + = ~ > / \ | . , ; ? ' " ( ) [ ] { }
2.2 詞法符號(簡稱符號)
C++共有6種詞法符號,分別為
1、標識符
標識符是程序員定義的詞法符號,用它來命名程序中的一些實體。常見的有函數(shù)名字、類名、變量名、常量名、對象名、標號名、類型名等。C++規(guī)定標識符由大小些字母、數(shù)字符號和下劃線組成,第一個字符必須是字母和下劃線。
定義標識符有一定的要求
(1) 標識符長度沒有限制,但不同的編譯系統(tǒng)有不同的要求,一般不超過31。
(2) 第一個字符必須是字母或下劃線。
(3) 標識符中大小寫是有區(qū)別的。XY,xy,xY,Xy都是不同的標識符。
(4) 標識符定義時應盡可能是用有意義的單詞。
(5) 標識符不能與關(guān)鍵字相同。
(6) 中間不能有空格。
2、關(guān)鍵字
關(guān)鍵字是系統(tǒng)預留的詞法符號。都有不同的用途和含義。
書上給出了ANSI標準的關(guān)鍵字(32個)及一些VC擴展的一些關(guān)鍵字(29個)。
3、運算符
運算符實際上是系統(tǒng)預定義的函數(shù)名字,這些函數(shù)作用于被操作的對象,將獲得一個結(jié)果值。這部分內(nèi)容在后面將詳細介紹。
4、分隔符
分隔符又稱標點符號。用來分隔單詞和程序正文的。C++常用分隔符有:
(1)空格符:用來做單詞之間的分隔。
(2)逗號:變量說明時分隔多個變量。
(3)分號:作為語句結(jié)束時的標記。在for 語句后面括號中三個表達式也用到分號。
(4)冒號:用作語句標號,在switch語句中也會使用到。
(5){ }:用來構(gòu)造程序
5、常量
C++中,常量有數(shù)字常量、字符常量、字符串常量。
6、注釋符
前面已經(jīng)講過,有兩種方法,一種是C++語言新增的注釋方法,即以//開頭,占一行。另外就是原來C語言的注釋方法,以一對/*和*/括起的注釋信息。
2.3 基本數(shù)據(jù)類型
類型是對系統(tǒng)中的實體的一種抽象,它描述了某種實體的基礎(chǔ)特性,包括值的表示、存儲空間的大小以及對該值的操作。C++的數(shù)據(jù)類型包括基本數(shù)據(jù)類型和構(gòu)造數(shù)據(jù)類型兩類。構(gòu)造數(shù)據(jù)類型又稱復合數(shù)據(jù)類型,它是一種更高級的抽象。當變量被定義為某種類型時會受到系統(tǒng)對該類型的特別保護,確保其值不受非法操作。
C++語言的基本數(shù)據(jù)類型有如下四種:
·整型,說明符為int;
·字符型,說明符為char;
·浮點型(又稱實型),說明符為float(單精度),double(雙精度);
·空值型,說明符為void,用于函數(shù)和指針。
為了滿足各種情況的需要,除了void型外,上述的三種類型前面還可以加上修飾符改變原來的含義。
signed 表示有符號
unsigned 表示無符號
long 表示長型
short 表示短型
上述4種修飾符都適用于整型和字符型,只有l(wèi)ong 還適用于雙精度浮點型。
數(shù)據(jù)類型規(guī)定的存儲空間都是按字節(jié)算的,其占用的字節(jié)數(shù)會根據(jù)機器字長的不同會有所變化。也就是說,變量所占空間的大小與被定義的類型和機器有關(guān)。所以要注意那些類型會受機器的影響。
2.1 C++字符集
字符是可以區(qū)分的最小單位,也是組成詞法符號的基本單位。C++的字符由下列字符組成。
1、大小寫英文字母
a~z,A~Z
2、數(shù)字字符
0~9
3、特殊符號
空格 ! # % ^ & * _ - + = ~ > / \ | . , ; ? ' " ( ) [ ] { }
2.2 詞法符號(簡稱符號)
C++共有6種詞法符號,分別為
1、標識符
標識符是程序員定義的詞法符號,用它來命名程序中的一些實體。常見的有函數(shù)名字、類名、變量名、常量名、對象名、標號名、類型名等。C++規(guī)定標識符由大小些字母、數(shù)字符號和下劃線組成,第一個字符必須是字母和下劃線。
定義標識符有一定的要求
(1) 標識符長度沒有限制,但不同的編譯系統(tǒng)有不同的要求,一般不超過31。
(2) 第一個字符必須是字母或下劃線。
(3) 標識符中大小寫是有區(qū)別的。XY,xy,xY,Xy都是不同的標識符。
(4) 標識符定義時應盡可能是用有意義的單詞。
(5) 標識符不能與關(guān)鍵字相同。
(6) 中間不能有空格。
2、關(guān)鍵字
關(guān)鍵字是系統(tǒng)預留的詞法符號。都有不同的用途和含義。
書上給出了ANSI標準的關(guān)鍵字(32個)及一些VC擴展的一些關(guān)鍵字(29個)。
3、運算符
運算符實際上是系統(tǒng)預定義的函數(shù)名字,這些函數(shù)作用于被操作的對象,將獲得一個結(jié)果值。這部分內(nèi)容在后面將詳細介紹。
4、分隔符
分隔符又稱標點符號。用來分隔單詞和程序正文的。C++常用分隔符有:
(1)空格符:用來做單詞之間的分隔。
(2)逗號:變量說明時分隔多個變量。
(3)分號:作為語句結(jié)束時的標記。在for 語句后面括號中三個表達式也用到分號。
(4)冒號:用作語句標號,在switch語句中也會使用到。
(5){ }:用來構(gòu)造程序
5、常量
C++中,常量有數(shù)字常量、字符常量、字符串常量。
6、注釋符
前面已經(jīng)講過,有兩種方法,一種是C++語言新增的注釋方法,即以//開頭,占一行。另外就是原來C語言的注釋方法,以一對/*和*/括起的注釋信息。
2.3 基本數(shù)據(jù)類型
類型是對系統(tǒng)中的實體的一種抽象,它描述了某種實體的基礎(chǔ)特性,包括值的表示、存儲空間的大小以及對該值的操作。C++的數(shù)據(jù)類型包括基本數(shù)據(jù)類型和構(gòu)造數(shù)據(jù)類型兩類。構(gòu)造數(shù)據(jù)類型又稱復合數(shù)據(jù)類型,它是一種更高級的抽象。當變量被定義為某種類型時會受到系統(tǒng)對該類型的特別保護,確保其值不受非法操作。
C++語言的基本數(shù)據(jù)類型有如下四種:
·整型,說明符為int;
·字符型,說明符為char;
·浮點型(又稱實型),說明符為float(單精度),double(雙精度);
·空值型,說明符為void,用于函數(shù)和指針。
為了滿足各種情況的需要,除了void型外,上述的三種類型前面還可以加上修飾符改變原來的含義。
signed 表示有符號
unsigned 表示無符號
long 表示長型
short 表示短型
上述4種修飾符都適用于整型和字符型,只有l(wèi)ong 還適用于雙精度浮點型。
數(shù)據(jù)類型規(guī)定的存儲空間都是按字節(jié)算的,其占用的字節(jié)數(shù)會根據(jù)機器字長的不同會有所變化。也就是說,變量所占空間的大小與被定義的類型和機器有關(guān)。所以要注意那些類型會受機器的影響。