本節書摘來自異步社群《c語言程式設計——零基礎初學者指南(第3版)》一書中的第1章,第1.2節,作者 【美】greg perry , dean miller,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視
c語言程式設計——零基礎初學者指南(第3版)
在計算機上編寫并執行c語言程式之前,需要一個c編譯器(c compiler)。c編譯器用于建立(build)或編譯(compile)c程式(編譯是一個技術術語,指将程式轉換為計算機可讀的内容),讓你在需要檢視結果時可以運作已編譯的程式。現在有許多非常優秀且免費的軟體包,可以用它們來編輯并編譯你的c程式。通過網絡搜尋即可找到諸多這樣的軟體。本書使用的是code::blocks(www.codeblocks.org )。

提示 如果在搜尋引擎中查找“c programming compilers”,會搜尋出許多免費的軟體,其中包括borland和microsoft提供的。但是,為什麼本書使用code::blocks?因為它為各種作業系統(windows、macs和linux)提供了不同的版本,無論你用什麼作業系統都可以使用code::blocks。
如果你正打開code::blocks的首頁,閱讀網站的第一行,可能會有些擔心:
the open source, cross platform, free c++ ide.
(開源、跨平台、免費的c++內建開發環境)
開源(open source)指的是使用者可以更換或改進軟體的代碼(現在想這樣做尚早,暫時将其放在一邊)。跨平台(cross platform)意味着該軟體可以在不同的作業系統上運作。作為初學者,隻需要關注自己所使用的平台即可。免費(free),不言自明。ide是內建開發環境(integrated development environment)的縮寫,這意味着可以用其編寫、編輯和調試程式,不需要切換其他軟體。我們很快就會接觸到調試。
不要因為看見c++而擔憂。在code::blocks中,既能編寫c程式也能編寫c++程式。目前,要找到一個純正的c編譯器比較困難。因為c編譯器都會附帶c的更進階版本,即c++。是以,在尋找c編譯器的同時,你會發現它一定是c和c++組合的編譯器,而且一般都會強調c++的功能。這非常不錯,在學習c語言後,你已經有一個c++編譯器。等将來學習c++,就不用再去學習新ide的輸入和輸出。
code::blocks的首頁,如圖1.1所示。要下載下傳c/c++內建開發環境,隻需單擊頁面左側主菜單中的“downloads”選項即可。
圖1.1 code::blocks的首頁(請留意“downloads”選項)
在選擇“downloads”選項後,将彈出另一個頁面,對3個選項作進一步讨論:binary、source和svn。後兩個是進階選項,初學者可以忽略。請單擊“download the binary release ”即可。
注意 安裝時需注意兩點。第一,本書的螢幕截圖與你在網際網路上所見的首頁可能稍有不同——code::blocks會不斷更新軟體,其版本号會不斷增加。我在編寫本書時使用的code::blocks版本号為10.05,但是出版前最後核實,其版本号已更新至12.11。在你拿到本書時,版本号可能會更大。第二,如果你是windows使用者,確定你下載下傳的是較大的檔案(标題中有mingw)。這個版本包含測試工具,在你成為資深c語言程式員時會用得上。
下一頁顯示的各選項,依作業系統而異。如果選擇windows選項,請繼續選擇第二個選項,如圖1.2所示。這樣即可下載下傳完整的編譯器和調試器,遲早用得上。
圖1.2 選擇windows內建開發環境下載下傳(可選擇任意一個下載下傳源進行下載下傳)
在确定開始下載下傳後,可以去幹點别的(找點東西吃)——下載下傳的檔案較大,下載下傳時間依你的網速而定。下載下傳完成後,點選檔案并接受所有預設設定(隻有資深的程式員才會根據自己的需要進行安裝)。很快,就能在計算機上運作code::blocks了。退出“每日提示”(tip of the day),并将code::blocks相關的程式都設定為.c和.cpp檔案後,才能關閉文本視窗。此時,螢幕上顯示的是該軟體的視窗,如圖1.3所示。
圖1.3 歡迎來到程式設計之家
注意 你編寫的c程式叫作源代碼(source code)。編譯器将c源代碼翻譯成機器語言(machine language)。計算機由成千上萬的電路開關(開或者關)組成。是以,計算機最終的指令必須是二進制(binary),字首bi-代表“二”。電路的兩種狀态被稱為二進制狀态(binary state)。用c編譯器将c程式轉換為1和0(表示内部的開或關的設定),比你親自愚公移山要容易得多。