C語言的組成及一些基本術語概念
1.C程式的組成
典型的C程式由前處理器指令、main()函式、和其它函式及語句組成。其中,C語言的語句分為6種:
- 標號語句
- 複合語句
- 表示式語句
- 選擇語句
- 迭代語句
- 跳轉語句
2. C語言的一些基本概念
2.1 標頭檔案(header)
C程式頂部資訊的集合成為標頭檔案,它包含了編譯器建立最終可執行程式要用到的資訊,標頭檔案幫助編譯器把程式正確的組合在一起。
#include 指令是一條C前處理器指令,# 符號表明,C前處理器會在編譯器接手之前處理這條指令,對原始碼做一些準備工作,即預處理(preprocessing)。不同程式需要的標頭檔案不同,有的需要一個,有的需要多個,用 #include
2.2 main()函式
main()函式是每個C程式的入口,C程式從main()函式處開始執行,也就是說,每個程式都有,且只有一個main()函式。int main (void),考慮到C語言的各種標準,雖然有的標準下可以省略括號裡面的void,但為了適用於多種編譯器,最好不要省略。
2.3 註釋
程式中註釋的作用是:說明文件的用途、使用方法、特定變數的描述和一些解釋說明等,程式編譯時會跳過註釋的內容,所以註釋主要是給人看的
目前C程式中有兩種註釋方式:第一種是 /* ………*/ 的方式,這種註釋是早起C語言用的方式,另一種是 // 雙斜線註釋方式,前一種可以多行註釋(塊註釋),也可單行註釋。而後一種只能單行註釋。不同情況下選擇適當的註釋方式能讓程式碼更美觀。
2.3 變數的宣告
在C語言中,所有變數必須先宣告才能使用。變數的宣告指出變數的資料型別,變數名等,是程式中使用變數前必須做的事。把所有變數的宣告放在程式的開頭是以往標準的要求,這樣有助於查詢和理解程式的用途,但現在,變數的宣告只要在變數使用前完成就行。
2.4 return()語句
有返回值的C函式要有return()語句,該語句以return關鍵字開始,後面是待返回的值,並以分號結尾。有的情況下可以省略該語句,但為了養成良好的程式設計習慣,建議都加上此語句。
2.5函式原型、函式呼叫和函式定義
以如下程式碼為例:
/* this is a example code */
#include <stdio.h>
void butler(void); // butler 函式的函式原型,句末後有分號
int main(void)
{
printf("I will summon the butler function.\n");
butler(); //butler 函式的函式呼叫
printf("Yes. Bring me some tea and writeable DVDs.\n");
return 0;
}
void butler(void) //butler 函式的函式定義,句末無分號
{
printf("You rang, sir?\n");
}
函式原型是一種宣告形式,告知編譯器正在使用某函式,因此函式原型也稱為函式宣告。同時,函式原型也指明瞭函式的屬性,包括返回值型別,輸入引數型別等。
函式呼叫即是程式中在需要的地方通過函式名及輸入的參量呼叫函式,函式的呼叫可以在程式的多處呼叫,但注意不用再前面加資料型別了。
函式定義與main()函式的形式相似,都包含函式頭和用花括號括起來的函式體。函式頭重述了函式原型的資訊,函式體則是該函式所包含的具體程式步驟。
mian()函式可以處在其他函式之前,也可以處在其他函式之後,不會影響其作為程式入口的功能,只是一般習慣將mian()函式放在程式開頭。
2.6 程式狀態
程式狀態是在程式執行過程中,某給定點上所有變數值的合集,他是計算機當前狀態的一個快照。通過跟蹤程式狀態便可對程式進行檢查,也可以通過偵錯程式讓程式分步執行,檢視更細節的資訊,從而準確找到程式中的BUG。
說明:此文件是對《C Primer Plus》第二章內容的簡要總結。