C語言 37個關鍵字

2022-08-25 20:03:29 字數 3190 閱讀 2981

ansi:

美國國家標準學會(american national standards institute: ansi

)成立於

1918

年。關鍵字:是由系統定義的,不能重新做其他定義的字元,且每個關鍵字已經賦予了不同的意義,讓程式設計者能夠使用來告訴編譯器完成不同的工作ps:c語言嚴格區分大小寫,

int!=int,

可以定義

int int;

原來的k&r關鍵字共

27個:

auto  double  int  struct  break  else  long  switch  case  register  typedef   char  extern  return  union  float  short   unsigned  continue  for  default  goto   sizeof   do  if  

while  static    

iso/ansi c90新增5個:

enum  signed  void  volatile  const 

c99新增5個:

inline  restrict  _bool   _complex   _imaginary 

總共27+5+5=37

個根據關鍵字的作用,可以將關鍵字大致分為資料型別關鍵字和流程控制關鍵字兩大類:

1、void:

宣告函式無返回值或無引數,宣告無型別指標,顯式丟棄運算結果

2、char:

字元型型別資料,屬於整型資料的一種

3、int:

整型資料,通常為編譯器指定的機器字長

4、float:

單精度浮點型資料,屬於浮點資料的一種

5、double:

雙精度浮點型資料,屬於浮點資料的一種

6、short:

修飾int

,短整型資料,可省略被修飾的

int。

7、long:

修飾int

,長整形資料,可省略被修飾的

int。

8、signed:

修飾整型資料,有符號資料型別

9、unsigned:

修飾整型資料,無符號資料型別

10、struct:

結構體宣告

11、union:

共用體宣告

12、enum:

列舉宣告

13、typedef:

宣告型別別名

14、sizeof:

得到特定型別或特定型別變數的大小

15、auto:

指定為自動變數,由編譯器自動分配及釋放。通常在棧上分配

16、static:

指定為靜態變數,分配在靜態變數區,修飾函式時,指定函式作用域為檔案內部

17、register:

指定為暫存器變數,建議編譯器將變數儲存到暫存器中使用,也可以修飾函式形參,建議編譯器通過暫存器而不是堆疊傳遞引數

18、extern:

指定對應變數為外部變數,即在另外的目標檔案中定義,可以認為是約定由另外檔案宣告的韻蟮囊桓觥耙 謾?

19、const:

與volatile

合稱「cv特性」

,指定變數不可被當前執行緒

/程序改變(但有可能被系統或其他執行緒

/程序改變)

20、volatile:

與const

合稱「cv特性」

,指定變數的值有可能會被系統或其他程序

/執行緒改變,強制編譯器每次從記憶體中取得該變數的值

21、return:

用在函式體中,返回特定值(或者是void

值,即不返回值)

22、continue:

結束當前迴圈,開始下一輪迴圈,執行到此只結束本輪迴圈,繼續新一輪迴圈

23、break:

跳出當前迴圈或switch

結構,執行到此跳出所有的迴圈,即結束for語句等

24、goto:

無條件跳轉語句

25、if:

條件語句

26、else:

條件語句否定分支(與if

連用)27、

switch:

開關語句(多重分支語句)

28、case:

開關語句中的分支標記

29、default:

開關語句中的「其他」

分治,可選。

30、for:

for迴圈結構,

for(1;2;3)4;

的執行順序為

1->2->4->3->2...

迴圈,其中

2為迴圈條件

31、do:

do迴圈結構,

do 1 while(2);

的執行順序是

1->2->1...

迴圈,2

為迴圈條件

32、while:

while迴圈結構,

while(1) 2;

的執行順序是

1->2->1...

迴圈,1

為迴圈條件

(以上迴圈語句,當迴圈條件表示式為真則繼續迴圈,為假則跳出迴圈。)

ps:c語言把0作為

false

假,非0

為true

真33、

inline:

內聯函式,

是為了解決

c 預處理器巨集存在的問題所提出一種解決方案,用來提高函式使用效率。內聯函式使用inline

關鍵字定義,並且函式體和申明必須結合在一起, 否則編譯器將他作為普通函式對待。

34、restric:

關鍵字只用於限定指標;該關鍵字用於告知編譯器,所有修改該指標所指向內容的操作全部都是基於(base on)

該指標的,即不存在其它進行修改操作的途徑;這樣的後果是幫助編譯器進行更好的**優化,生成更有效率的彙編**。

35、bool:

布林型別,用來表示真或假,零表示假,非零表示真。所有非零的數賦值給布林型變數,最終的值還是1,包含標準標頭檔案 stdbool.h 

後,我們可以用 

bool 

代替 _bool 

,true 

代替 1 

,false 

代替 0 

36、_complex:

表示複數,複數型別包括乙個實部和乙個虛部

37、_imaginary:

表示虛數,虛數型別沒有實部,只有虛部

C語言32個關鍵字

關鍵字就是已被c語言本身使用,不能作其它用途使用的字。例如關鍵字不能用作變數名 函式名等 由ansi標準定義的c語言關鍵字共32個 auto double int struct break else long switch case enum register typedef char extern...

C語言32個關鍵字

c語言32個關鍵字 void 宣告函式無返回值或無引數,宣告無型別指標,顯式丟棄運算結果。a基本資料類 char 字元型型別資料,屬於整型資料的一種。型 5個 int整型資料,通常為編譯器指定的機器字長。float 單精度浮點型資料,屬於浮點資料的一種,小數點後儲存6位。double 雙精度浮點型資...

C語言32個關鍵字

常見關鍵字 int宣告整型變數 double 宣告雙精度變數 long 宣告長整型變數 char 宣告字元型變數 float 宣告浮點型變數 short 宣告短整型變數 signed 宣告有符號型別變數 unsigned 宣告無符號型別變數 struct 宣告結構體變數 union 宣告聯合資料型別...