C語言是一種面向過程的語言,它編寫的程序能夠運行在各大操作系統上,例如Windows,Linux,Unix,Mac,Android,IOS等,而且C語言編寫的應用程序更加高效(同樣的硬件,相比Java快5倍左右),適合於做底層,嵌入式,移動應用程序的開發,各大流程的操作系統都是使用C開發出來的。但是C語言也有自身的缺點,移植性差,(也就是C語言在Winodws上編寫的應用程序放到Linux系統上運行的話,可能要更改對應的系統庫),過度依賴於各大操作系統的API。
C語言針對不同的平台(操作系統)有對應的開發工具
按功能性分為 編輯和和IDE,編輯器就是提供了簡單的代碼編寫功能(Windows的記事本),而IDE則是集成了程序開發,測試,部署和團隊管理等功能的工具。
Windows: Editplus,VisualStudio
Linux:VI,VIM
Mac:Xcode
#include
void main(){
printf("Hello World ");
getchar();
}
這個就是C語言程序最簡單的程序了,程序的目的就是向控制台打印一句HelloWorld。
每個C語言程序中都得包含一個名為main的函數,不然程序無法編譯,而程序的執行也是從main函數的”{“代碼塊開始,從”}”結束。而之前提過C是面向過程的編程語言,程序的組成部分是一個一個的函數組成的。而調用函數之前必須在程序中包含指定的頭文件,這裡的printf()就是在stdio.h頭文件中定義的。意思就是將()傳遞的字符串參數打印到控制台中。而為了輸入任意字符,中斷程序則是調用getchar()函數,同時可以在控制台中看到打印的字符串內容,否則就是一閃而過。
采用Windows平台,編譯器采用Visual Studio2013提供的編譯器。
當編寫C程序(名為HelloWorld.c)之後,可以通過平台提供的編譯器將源代碼編譯成本地平台的機器碼直接運行。但是中間的過程需要經過4個步驟。
1. 編輯:就是C程序員使用編輯器或者IDE根據C語言的特性寫出來的源代碼。源代碼後綴名為.c
2.編譯:源代碼編寫完成之後就采用特定平台的編譯器編譯生成機器碼,如果程序有錯誤,在編譯期間就會暴露出來,但是更多的是在運行期發現的Bug。編譯輸出的結果會生成object code,例如這裡的HelloWorld.obj。編譯是使用C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\Shortcuts目錄中的VS2013開發人員命令提示,使用cl HelloWorld.c即可。
3. 鏈接:將編譯產生的各種模塊組合起來,再從C語言提供的程序中添加必要的代碼模塊,將它們組合成一個可執行的文件。Windows上是後綴為.exe的文件。
4. 經過以上步驟都沒錯誤之後就可以運行程序了。
注釋是寫給開發人員看的,用於說明程序的功能性信息,注釋的內容不會被編譯。C語言中支持單行(//)和多行(/**/)兩種注釋,其中單行顧名思義就是只能注釋一行內容,多行注釋可以注釋多行內容。
添加注釋之後的HelloWorld.c程序,習慣良好的開發人員應該多寫注釋。
#include /*導入頭文件 stdio.h,此文件包含標准的輸入輸出*/
/*定義程序的主方法,如果程序沒有main方法,則無法編譯
* 任何一個C程序有且只有一個main函數,決定了程序從哪裡開始執行。
*/
void main()//void表示main函數不帶返回值
{
//C程序執行的時候,從main函數開始,也從main函數結束。
//使用stdio.h頭文件中的printf()函數向控制台打印一句話(傳遞的字符串參數)
printf("我的第一個C程序,Hello World "); //調用函數之前必須include指定定義函數的頭文件。
printf("\n再次打印"); //換行後再次打印輸出的參數,只能調用已經存在的函數
getchar(); //調用stdio.h頭文件的getchar()函數:等待輸入一個字符,退出程序
}