本節書摘來自異步社群《c語言程式設計初學者指南》一書中的第1章,第1.1節,作者【美】keith davenport(達文波特) , m1ichael vine(維恩),更多章節内容可以通路雲栖社群“異步社群”公衆号檢視
要學習c程式設計,所需的所有東西隻不過是一台計算機、一款文本編輯器、c庫和一個c編譯器。在整個本書中,我們使用一款簡單的文本編輯器來編寫c程式。和很多進階的程式設計語言(如visual basic或c#)不同,c語言并不需要一個進階的圖形化使用者界面(graphical user interface,gui)。實際上,一個複雜的、功能豐富的界面,可能會讓想要學習程式設計的初學者分心。他們很容易去關注漂亮界面的那些細枝末節,而不是關注諸如變量和循環這樣的基本的程式設計概念,而這些概念才是程式設計初學者應該重點關注的問題。
提示
你知道計算機和文本編輯器是什麼,但是,不知道c庫是什麼。c編譯器又是什麼呢?本章後面會介紹這兩個概念,但是,簡而言之,庫是預先編寫好的代碼,可以用來執行某些标準函數,例如,從使用者那裡擷取輸入。而諸如gcc這樣的編譯器則是一個程式,它們接受你輸入到一個文本檔案中的代碼,将其轉換為計算機可以使用的格式并建立可執行的程式。
有幾種免費的c編譯器和文本編輯器可供使用。當然,還有很多商業化的版本。如果你已經有了必需的程式設計工具,可以跳過這個小節。但是如果你還沒有,cygwin已經開發了一款用于windows的、簡單的、健壯的、類似于linux的環境,其中包含了很多免費的軟體包,例如,一款叫做gcc的c編譯器、文本編輯器以及其他常用的工具。可以從www.cygwin.com下載下傳cygwin的免費軟體包。
技巧
如果你想要使用cygwin中的文本編輯器,找到editors部分并且選擇nano(本書附錄c會介紹nano)或者vim(本書附錄b會介紹nano),或者兩個編輯器都選中。也可以在cygwin的外部,使用諸如notepad這樣的文本編輯器來編寫代碼。
注意,安裝程式可能會提示你安裝其他的軟體包以解決依賴性。如果是這樣的話,允許安裝程式包含所需的那些軟體包。
在成功安裝了cygwin環境之後,你将能夠通過unix shell通路一個模拟的unix(linux)作業系統環境。要啟動unix shell,直接在桌面或者通過開始菜單的程式組找到cygwin的快捷方式。
在啟動了程式之後,cygwin unix如圖1.1所示。

圖1.1 啟動cygwin unix shell
注意圖1.1中用于unix指令提示符的文法,你的文法将會不同。
第1行顯示了是哪一個使用者登入到了unix shell(就是登入到你所使用的計算機的使用者,在我的計算機上,使用者是keith)以及計算機的名稱(keith-desktoppc正是我的計算機的獨特的名字)。下一行以一個美元符号($)開頭。這是unix指令提示符,我們在這裡輸入并執行unix指令。
根據你的cygwin的具體安裝(cygwin版本)和配置(所選的元件)的不同,你可能需要将cygwin的bin目錄添加到系統的path環境變量中。如果你安裝了32位的cygwin,使用如下指令:
如果你安裝了64位的cygwin,使用如下指令:
為了簡單起見,我假設你安裝了32位的cygwin。如果你安裝了64位的cygwin,也沒問題,在使用本書所引用的檔案路徑的時候,用c:cygwin64代替c:cygwin就好了。
cygwin和其他的程式都使用path環境變量來找到要運作的可執行檔案。如果你使用基于microsoft的作業系統,可以有幾種方法來編輯path變量。一種方法是,通過開始菜單,在運作對話框中,輸入關鍵字cmd,進而打開一個基于microsoft的指令shell(dos視窗)。在c:提示符之後,輸入如下指令:
這條指令把c:cygwinbin添加到了path變量的末尾而不會覆寫它。要驗證這條指令是否執行成功,直接在同樣的基于microsoft的指令shell視窗輸入關鍵字path。注意,在path的值中,每一個不同的目錄結構都是用一個分号隔開的。如果需要,請查閱你的系統的文檔來了解關于環境變量的更多資訊,特别是了解如何更新path系統變量。