本節將講解C語言標識符的命名規則和分類。
1、C語言的標識符命名規則
在C語言中,有許多符號的命名,如變量名、函數名、數組名等,都必須遵守一定的規則,按此規則命名的符號稱為標識符。
合法標識符的命名規則是:
(1)標識符可以由字母、數字和下劃線組成;
(2)第一個字符必須為字母或下劃線;
(3)不能使用C語言的關鍵字或保留字及庫函數命名標識符。
下面給出的標識符是合法的標識符:
num1、area、PI、_ini、a_array、a1234、P101p
下面給出一些不符合要求的標識符:
456P、cade-y、w.w、a&b、if、main
在C語言的標識符中,大寫字母和小寫字母被認為是兩個不同的字符,例如page和Page是兩個不同的標識符。
對于標識符的長度(即一個標識符允許的字符個數),C語言編譯系統是有規定的,即標識符的前若干個字符有效,超過的字符將不被識別。不同的C語言編譯系統所規定的標識符有效長度可能會不同。有些系統允許取較長的名字,讀者在取名時應當了解所用系統的具體規定。
2、C語言的標識符的分類
C語言的標識符主要分為三類:
(1)關鍵字
C語言已經預先規定了一批標識符,它們在程序中都代表著固定的含義,不能另作他用,這些標識符稱為關鍵字。例如,用來說明變量類型的標識符int,double以及if語句中的斌else等都已有專門的用途,它們不能再用作變量名或函數名。
(2)預定義標識符
所謂預定義標識符是指在C語言中預先定又并具有特定含義的標識符,如C語言提供的庫函數的名字(如printf)和預編譯處理命令(如define)等。C語言允許把這類標識符重新定義另作他用,但這將使這些標識符失去預先定義的原意。鑒于目前各種計算機系統的C語言都一致把這類標識符作為固定的庫函數名或預編譯處理中的專門命令使用,因此為了避免誤解,建議用戶不要把這些預定義標識符另作他用。
(3)用戶標識符
由用戶根據需要定義的標識將稱為用戶標識符,又稱自定義標識符。用戶標識符一般用來給變量、函數、數組等命名。程序中使用的用戶標識符除要遵守標識符命名規則外,還應注意做到“見名知義”。即選擇具有一定含義的英文單詞或漢語拼音作為標識符,如numberl、red、yellow、green、work等,以增加程序的可讀性。
如果用戶標識符與關鍵字相同,則在對程序進行編譯時系統將給出出錯信息;如果用戶標識符與預定義標識符相同,系統并不報錯,只是該預定義標識符將失去原定含義,代之以用戶確認的含義,這樣有可能會引發一些運行時錯誤。
新聞熱點
疑難解答
圖片精選