C語言拾遺 識別符號

2021-10-07 14:58:18 字數 801 閱讀 8287

識別符號可以簡單地理解為乙個名字,用來表示變數名、常量名、函式名以及陣列名等。在c語言中識別符號可以設定容易理解的名字,但要遵循一定的規則,具體規則如下:

識別符號由字母、數字、下劃線組成,並且首字母不能是數字。(c 識別符號內不允許出現標點字元,比如 @、$ 和 %。)

識別符號對大小寫敏感,即嚴格區分大小寫。一般對變數名用小寫,符號常量命名用大寫。(注:c語言中字母是區分大小寫的,因此score、score、score分別代表三個不同的識別符號)

不能把c的關鍵字作為使用者的識別符號,例如:if、for、while等。(注:識別符號不能和c語言的關鍵字相同,也不能和使用者自定義的函式或c語言庫函式同名。for是可以的,因為區分大小寫。)

ansi標準規定,識別符號可以為任意長度,但外部名必須至少能由前6個字元唯一地區分,ansi標準還規定內部名必須至少能由前31個字元唯一地區分。內部名指的是僅出現於定義該識別符號的檔案中的那些識別符號。

識別符號命名應做到"見名知意",例如,長度(外語:length),求和、總計(外語:sum),圓周率(外語:pi)

為什麼 ansi 標準規定了外部標示符的長度和大小寫限制?

問題在於聯結器既不受 ansi/iso 標準的控制也不遵守 c 編譯器開發者的規定。限制僅限於識別符號開始的幾個字元而不是整個識別符號。在原來的 ansi 標準中限制為 6 個字元, 但在 c99 中放寬到了 31 個字元。

C語言拾遺

main函式引數 c語言規定main函式引數只能有兩個,習慣上這兩個引數寫成argc和argv。c語言還規定argc必須是整形變數,argv必須是指向字串的指標陣列。因此,main函式的函式頭應該寫為 main argc,argv int argc char argv 或者 main int arg...

C語言拾遺

保證某些全域性變數的常量性 c c 中不能通過變數來定義陣列 const int row 10 const int col 10 c define row 10 define col 10orenum c style型別轉換 new type expression static cast expre...

C語言拾遺

1.操作符與基本型別 賦值運算子的優先順序低於算數運算子。如 x 3 2即x 3 2 優先順序 高於 高於 高於 一元操作符的關聯是從右到左,和 都必須邦定乙個變數或者叫 左值 如 x 注意 x 並不是左值。例如 z x y,相當於 z x y 字元 0 對應ascii的48,a 對應的是65。無論...