1. 程式人生 > >C語言變數常量總結

C語言變數常量總結

先從最簡單的C語言程式開始吧

#include <stdio.h>

int main() 

{

printf("Hello C!\n"); //主程式

return 0; //返回值

}

一個程式都要有其執行的主體,所以對於C來說,剛開始main函式成了我們所需的這個主體。

int main() //main 函式的定義

{

return 0; //返回值

}

可能有人注意到上方  //  然後後面跟了一些註釋,//這是C++的註釋風格,C語言為 /*   */  ,簡單來說就是對所標註之前的程式進行註釋,方便他人理解。

printf("Hello C!\n");   Hello C!\n  被 " " 所包含,我們對這種由" "引起來的字元稱為字串。

這部分會發現為什麼後面還跟了一個\n卻未顯示出來,實際上這是換行符,或者說轉義字元。

對於轉義字元的解釋,簡單來說就將轉義字元放置語句的最後它會被編譯成新的含義。如:

轉義字元       釋義

⧵? 在書寫連續多個問號時使用,防止他們被解析成三字母詞 

⧵’ 用於表示字元常量’ 

⧵“ 用於表示一個字串內部的雙引號 

⧵\ 用於表示一個反斜槓,防止它被解釋為一個轉義序列符.

 ⧵a 警告字元,蜂鳴

 ⧵b 退格符 

⧵f 進紙符 

⧵n 換行 

⧵r 回車 

⧵t 水平製表符 

⧵v 垂直製表符 

⧵ddd ddd表示1~3個八進位制的數字。 如: ⧵130 X 

⧵xddd ddd表示3個十六進位制數字。 如: ⧵x030

而上面的第一條提到了三字母詞 ,他跟轉義字元相似,一些字母組合後代表的並不是其本身含義。如:

??(   代表    [  

??)   代表    ]

??<  代表    {

??>  代表    }

當你寫出第一個程式後,你會慢慢開始使用 如: int a =1;  來定義某個字元。

而這裡的int 便是資料型別,也就是整型

常見的資料型別有:

char           1

short          2

int              4

long           4

long long   4

float           8

double       8

每個型別後面是其大小,比如常用的int 是4個位元組等等,這裡給的是在Windows環境下各種資料型別的大小,不同的環境某些資料型別其大小也會改變,這裡會在後面進行補充說明。

在生活中有一些值是不會發生變化的,比如血型,圓周率等等,所以我們需要提到這個東西——常量。

在C語言中,當const 修飾一個識別符號的時候我們說,這個識別符號依然是一個變數,但是 它具有常屬性,不能被直接改變。 

比如:const int c_num = 0;

那麼這個時候 c_num = 20;   程式就會發生報錯。(注意:C語言中Const定義常量是可以被更改,只是不能被直接改變。而在C++語言中,const修飾的識別符號就是常量。 )

#define定義的識別符號常量

列舉常量

列舉關鍵字:enum

用一段程式來解釋列舉常量,如:

enum Sex

 {

     MALE,

     FEMALE,

     SECRET

 }

當你在接下來輸出MALE,FEMALE,SECRET時,你會發現他們有初始值 0,1,2.

列舉常量定義時,會從第一個常量由0開始,往後排序給予其一個初始值。

而變數就很簡單的,作為新手需要注意的是,變數的命名規則。

C 語言規定必須以字母或下劃線 _ 開頭,後面可以跟若干個字母、數字、下劃線,但不 能有其它字元。 

 其實這個規則不僅適用於變數名,也適用於所有可以由程式設計師起名的語法元素,例如以 後要講的函式名、巨集定義、結構體成員名等,在C語言中這些統稱為識別符號(Identifier )。

另外要注意,表示型別的char、int、float、double等雖然符合上述規則,但也不能 用作識別符號。

在C語言中有些單詞有特殊意義,不允許用作識別符號,這些單詞稱為關鍵字 (Keyword )或保留字(Reserved Word)。通常用於程式設計的文字編輯器都會高亮顯 示(Highlight)這些關鍵字,所以只要小心一點通常不會誤用作識別符號。

而C標準規定的關 鍵字有:

auto  break   case  char  const   continue  default  do    double else  enum   extern  float  for   goto  if   int    long  register    return   short  signed  sizeof    static  struct  switch  typedef union  unsigned   void   volatile  while