c語言中的標(biāo)識(shí)符有:關(guān)鍵字、預(yù)定義標(biāo)識(shí)符、用戶標(biāo)識(shí)符
1.關(guān)鍵字:不可以作為用戶標(biāo)識(shí)符號(hào)。main define scanf printf 都不是關(guān)鍵字。迷惑你的地方if是可以做為用戶標(biāo)識(shí)符。因?yàn)閕f中的第一個(gè)字母大寫了,所以不是關(guān)鍵字。
2.預(yù)定義標(biāo)識(shí)符是c語言中系統(tǒng)預(yù)先定義的標(biāo)識(shí)符,如系統(tǒng)類庫名、系統(tǒng)常量名、系統(tǒng)函數(shù)名。
預(yù)定義標(biāo)識(shí)符具有見字明義的特點(diǎn),如函數(shù)“格式輸出”(英語全稱加縮寫:printf)、“格式輸入”(英語全稱加縮寫:scanf)、sin、isalnum等等。
預(yù)定義標(biāo)識(shí)符可以作為用戶標(biāo)識(shí)符使用,只是這樣會(huì)失去系統(tǒng)規(guī)定的原意,使用不當(dāng)還會(huì)使程序出錯(cuò)。
3.用戶標(biāo)識(shí)符:用戶根據(jù)需要自己定義的標(biāo)識(shí)符。
一般用來給變量、函數(shù)、數(shù)組等命名。用戶標(biāo)識(shí)符如果與關(guān)鍵字相同,則編譯時(shí)會(huì)出錯(cuò);
如果與預(yù)定義標(biāo)識(shí)符相同,編譯時(shí)不會(huì)出錯(cuò),但預(yù)定義標(biāo)識(shí)符的原意失去了,或會(huì)導(dǎo)致結(jié)果出錯(cuò),因此預(yù)定義標(biāo)識(shí)符一般不用來作為用戶標(biāo)識(shí)符。
c語言中自定義標(biāo)識(shí)符規(guī)則有以下5條:
1.標(biāo)識(shí)符只能由字母,數(shù)字,和下劃線組成,其他字符是非法的。
2.標(biāo)識(shí)符第一個(gè)字符必須為字母或者為下劃線。舉個(gè)例子:char 66a為非法定義(因?yàn)槭鬃址麨閿?shù)字)char a66則為正確的標(biāo)識(shí)符定義。
3.c語言中的標(biāo)識(shí)符中大小寫是有區(qū)別的,舉個(gè)例子:int a和int a 這兩個(gè)定義是不同的,a 和a為兩個(gè)不同的整形變量。
4.標(biāo)識(shí)符的最大長(zhǎng)度僅為8個(gè)字節(jié),如有多余的字節(jié)將被忽略。所以對(duì)于 int student666 和student 999在c語言中將被認(rèn)為是兩個(gè)相同的變量。
5.c語言的標(biāo)識(shí)符定義不能與c語言預(yù)設(shè)關(guān)鍵字重名。常見的關(guān)鍵字有:int if else switch printf define等等。具體的需要查看c語言技術(shù)文檔。
感謝大家的閱讀,希望大家收益多多。
本文轉(zhuǎn)自:https://blog.csdn.net/qq_26079093/article/details/93372724
推薦教程:《c語言》