第一個關鍵字:auto
用來聲明自動變量。 可以顯式的聲明變量為自動變量。只要不是聲明在所有函數之前的變量,即使沒加auto關鍵字,也默認為自動變量。並且只在聲明它的函數內有效。而且當使用完畢后,它的值會自動還原為最初所賦的值。自動變量使用時要先賦值,因為其中包含的是未知的值。例:auto int name=1;
第二個關鍵字:static
用來聲明靜態變量。可以顯式的聲明變量為靜態變量。也為局部變量。只在聲明它的函數內有效。它的生命周期從程序開始起一直到程序結束。而且即使使用完畢后,它的值仍舊不還原。即使沒有給靜態變量賦值,它也會自動初始化為0.例:static int name=1.
第三個關鍵字:extern
用來聲明全局變量。同時聲明在main函數之前的變量也叫全局變量。它可以在程序的任何地方使用。程序運行期間它是一直存在的。全局變量也會初始化為0.例:extern int name;
第四個關鍵字:register
用來聲明為寄存器變量。也為局部變量,只在聲明它的函數內有效。它是保存在寄存器之中的。速度要快很多。對於需要頻繁使用的變量使用它來聲明會提高程序運行速度。例:register int name=1;
第五個關鍵字:int
用來聲明變量的類型。int為整型。注意在16位和32位系統中它的范圍是不同的。16位中占用2個字節。32位中占用4個字節。還可以顯式的聲明為無符號或有符號:unsigned int signed int .有符號和無符號的區別就是把符號位也當作數字位來存儲。也可用short和long來聲明為短整型,或長整行。例:int num;
第六個關鍵字:float
用來聲明變量的類型。float為浮點型,也叫實型。它的范圍固定為4個字節。其中6位為小數位。其他為整數位。例:float name;
第七個關鍵字:double
用來聲明為雙精度類型。它的范圍為8個字節。14位為小數位。也可使用更高精度的long double 它的范圍則更大,達到10字節。例:double name;
第八個關鍵字:struct
用來聲明結構體類型。結構體可以包含各種不同類型的量。比如可以把整型,字符型等類型的變量聲明在同一個結構體種,使用的時候使用結構體變量直接可以調用。例:struct some{ int a=1; float b=1.1; double=1.1234567;}kkk;這樣就可以使用kkk.a來使用結構體中的成員變量了 。也可以顯式的用struct some aaa,bbb;來聲明多個結構體變量。
第九個關鍵字:char
用來定義為字符型變量。它的范圍通常為1個字節。它在內存中是以ASC||瑪來表示的。所以它也可以跟整型來運算。也可使用無符號或有符號來定義。sigened char unsigned char例:char c;
第十個關鍵字:break
用來表示中斷。一般用在循環中。判斷是否滿足條件然后中斷當前循環。例:break;
第十一個關鍵字:continue
用來表示跳過當前其后面的語句,繼續下一次循環。例:continue;
第十二個關鍵字:long
用來聲明長型的類型。比如long int long double .
第十三個關鍵字:if
判斷語句,用來判斷語句是否滿足條件,例:if (a==b){ k=n;}
第十四個關鍵字:switch
條件選擇語句,常用來判斷用戶選擇的條件來執行特定語句。
例:
switch (name)
{
case ok:
printf("yes,ok!");
printf("yes,ok!");
printf("yes,ok!");break;
case no:
printf("oh,no!");
default:
printf("error..!") break;
}
第十五個關鍵字:case
配合switch一起使用,例子同上。
第十六個關鍵字:enum
用來聲明枚舉變量。.. 例:enum day{one,two,three,four,five,six,seven };
第十七的關鍵子:typedef
類型重定義..可以重定義類型,例:typedef unsigned int u_int; //將無符號整形定義為u_int .
第十八個關鍵字:return;
返回語句。可以返回一個值。當我們定義一個函數為有返回值的時候則必須返回一個值。
第十九個關鍵字:unio
定義聯共用體。用法用struct相同。不同的是共用體所有成員共享存儲空間.
unio kkk{int a; float b; }kka;
第二十個關鍵字:const
定義為常量.. 例: const int a; //變量a的值不能被改變.
第二十一個關鍵字:unsigned
定義為無符號的變量.. 默認變量都為有符號的.除非顯示的聲明為unsigned的.
第二十二個關鍵字:for
循環語句.可以指定程序循環多少次. 例:
for (int i=0;i<5;i++)
{
printf("程序將輸出5次這段話!");
}
第二十三個關鍵字:signed
將變量聲明為有符號型. 默認變量就為signed 型。一般可省略。
第二十四個關鍵字:void
空類型.. 一般用於聲明函數為無返回值或無參數。
第二十五個關鍵字:default
用於在switch語句中。定義默認的處理. 用法見switch。
第二十六個關鍵字:goto
無條件循環語句.
例:
int i=1;
w_go:i++;
if (i<5)
goto w_go;
else
printf("%d",i);
第二十七個關鍵子字:sizeof
用來獲取變量的存儲空間大小. 例: int a,b; b=sizeof(a);
第二十八個關鍵字:volatile
將變量聲明為可變的. 用法 volatile int a; (多線程)
第二十九個關鍵字:do
一般與while語句 配合使用. 構成的形式如 do while 或while do .例見while語句。
第三十個關鍵字: while
循環控制語句。 只要表達式為真就一直循環. 例:
do int a=1;
while (a>1) printf("a>1");
第三十一個關鍵字:else
常用來配合if一起使用。例:if (a==b)k=n; else k=s;
第三十二個關鍵字:short
用於聲明一個短整型變量: 例: short int a;
c語言常用的九種控制語句
1、if( )~else~ (條件語句)
2、for()~ (循環語句)
3、while()~ (循環語句)
4、do~while() (循環語句)
5、continue (結束本次循環語句)
6、break (終止執行switch或循環語句)
7、switch (多分支選擇語句)
8、goto (轉向語句)
9、return (從函數返回語句)
括號表示其中是一個條件,~表示內嵌的語句。例如:
‘if()~else~’的具體語句可以寫成:
if(x>y)z=x;else z=y;
34種運算符按優先級排序,空行表示優先級下降,01為最高,最先算
14~31均為雙目,左結合
() 01.圓括號
[] 02.下標
-> 03.指針型結構成員
. 04.結構成員
! 05.邏輯非
~ 06.位非
++ 07.自增
-- 08.自減
- 09.取負
(類型) 10.類型轉換
* 11.取內容
& 12.取地址
sizeof 13.求字節
…………………………………………………
此級(5~13)均為單目運算,且都為右結合
* 14.乘
/ 15.除
% 16.求余
+ 17.加
- 18.減
<< 19.左移
>> 20.右移
< 21.小於
<= 22.小於等於
> 23.大於
>= 24.大於等於
== 25.等於
!= 26.不等於
& 27.位與
^ 28.位異或
| 29.位或
&& 30.與
|| 31.或
?: 32.條件運算
……………………………………
此級(32)為三目運算,右結合
= 33.賦值運算
………………………………………………………………
另有10個擴展符+=,-=,*=,/=,%=,>>=,<<=,&=,^=,|=
, 34.逗號運算
( , )是C語言運算符中優先級最低的一種運算符,結合順序是從左至右,用來順序求值(最后一個逗號后面表達式的值作為整個表達式的值)