字符串常量
字符串常量是由一對(duì)雙引號(hào)括起的字符序列。例如: "CHINA" ,"C program: , "$12.5" 等都是合法的字符串常量。字符串常量和字符常量是不同的量。它們之間主要有以下區(qū)別:
1.字符常量由單引號(hào)括起來(lái),字符串常量由雙引號(hào)括起來(lái)。
2.字符常量只能是單個(gè)字符,字符串常量則可以含一個(gè)或多個(gè)字符。
3.可以把一個(gè)字符常量賦予一個(gè)字符變量,但不能把一個(gè)字符串常量賦予一個(gè)字符變量。在C語(yǔ)言中沒有相應(yīng)的字符串變量。
這是與BASIC 語(yǔ)言不同的。但是可以用一個(gè)字符數(shù)組來(lái)存放一個(gè)字符串常量。在數(shù)組一章內(nèi)予以介紹。
4.字符常量占一個(gè)字節(jié)的內(nèi)存空間。字符串常量占的內(nèi)存字節(jié)數(shù)等于字符串中字節(jié)數(shù)加1。增加的一個(gè)字節(jié)中存放字符"\0"(ASCII碼為0)。這是字符串結(jié)束的標(biāo)志。例如,字符串 "C program"在內(nèi)存中所占的字節(jié)為:C program\0。字符常量'a'和字符串常量"a"雖然都只有一個(gè)字符,但在內(nèi)存中的情況是不同的。
'a'在內(nèi)存中占一個(gè)字節(jié),可表示為:a
"a"在內(nèi)存中占二個(gè)字節(jié),可表示為:a\0符號(hào)常量
符號(hào)常量
#define 標(biāo)識(shí)符 常量
其中#define也是一條預(yù)處理命令(預(yù)處理命令都?quot;#"開頭),稱為宏定義命令(在第九章預(yù)處理程序中將進(jìn)一步介紹),其功能是把該標(biāo)識(shí)符定義為其后的常量值。一經(jīng)定義,以后在程序中所有出現(xiàn)該標(biāo)識(shí)符的地方均代之以該常量值。習(xí)慣上符號(hào)常量的標(biāo)識(shí)符用大寫字母,變量標(biāo)識(shí)符用小寫字母,以示區(qū)別。
#define PI 3.14159
void main(){
float s,r;
r=5;
s=PI*r*r;
printf("s=%f\n",s);
}
字符串常量是由一對(duì)雙引號(hào)括起的字符序列。例如: "CHINA" ,"C program: , "$12.5" 等都是合法的字符串常量。字符串常量和字符常量是不同的量。它們之間主要有以下區(qū)別:
1.字符常量由單引號(hào)括起來(lái),字符串常量由雙引號(hào)括起來(lái)。
2.字符常量只能是單個(gè)字符,字符串常量則可以含一個(gè)或多個(gè)字符。
3.可以把一個(gè)字符常量賦予一個(gè)字符變量,但不能把一個(gè)字符串常量賦予一個(gè)字符變量。在C語(yǔ)言中沒有相應(yīng)的字符串變量。
這是與BASIC 語(yǔ)言不同的。但是可以用一個(gè)字符數(shù)組來(lái)存放一個(gè)字符串常量。在數(shù)組一章內(nèi)予以介紹。
4.字符常量占一個(gè)字節(jié)的內(nèi)存空間。字符串常量占的內(nèi)存字節(jié)數(shù)等于字符串中字節(jié)數(shù)加1。增加的一個(gè)字節(jié)中存放字符"\0"(ASCII碼為0)。這是字符串結(jié)束的標(biāo)志。例如,字符串 "C program"在內(nèi)存中所占的字節(jié)為:C program\0。字符常量'a'和字符串常量"a"雖然都只有一個(gè)字符,但在內(nèi)存中的情況是不同的。
'a'在內(nèi)存中占一個(gè)字節(jié),可表示為:a
"a"在內(nèi)存中占二個(gè)字節(jié),可表示為:a\0符號(hào)常量
符號(hào)常量
#define 標(biāo)識(shí)符 常量
其中#define也是一條預(yù)處理命令(預(yù)處理命令都?quot;#"開頭),稱為宏定義命令(在第九章預(yù)處理程序中將進(jìn)一步介紹),其功能是把該標(biāo)識(shí)符定義為其后的常量值。一經(jīng)定義,以后在程序中所有出現(xiàn)該標(biāo)識(shí)符的地方均代之以該常量值。習(xí)慣上符號(hào)常量的標(biāo)識(shí)符用大寫字母,變量標(biāo)識(shí)符用小寫字母,以示區(qū)別。
#define PI 3.14159
void main(){
float s,r;
r=5;
s=PI*r*r;
printf("s=%f\n",s);
}

