官术网_书友最值得收藏!

第1章 步入C編程世界——認識C語言

◎本章教學微視頻:9個 9分鐘

學習指引

通過本章的學習,讀者能夠掌握C語言的基本概念、C語言程序的開發(fā)過程和編寫第一個C程序,同時理解C語言代碼結(jié)構(gòu)的編寫規(guī)范。

重點導讀

● 了解C語言程序。

● 熟悉C程序的開發(fā)環(huán)境。

● 熟悉C程序的編譯和運行流程。

● 掌握編寫第一個C程序的方法。

● 理解C代碼結(jié)構(gòu)編寫規(guī)范。

1.1 了解C語言

C語言是一門非常流行的計算機語言,它的問世已有近半個世紀,但是這門語言依舊散發(fā)著青昡的活力。要想學好C語言,首先需要來了解C語言的特點。

1.1.1 C語言的特點

C語言是由Dennis Ritchie創(chuàng)造并首先在配備UNIX操作系統(tǒng)的DEC PDP-11計算機上實現(xiàn)的。C語言是國際上廣泛流行的很有發(fā)展前途的計算機高級語言,它適合作為系統(tǒng)描述語言,既可用來寫系統(tǒng)軟件,也可用來寫應用軟件。

C語言是一門強大的專業(yè)化編程語言,其主要特點如下。

1. 語言簡潔緊湊,使用方便靈活

C語言有32個關鍵字,9種控制語句,程序書寫形式自由,主要用小寫字母表示。學過Pascal或FORTRAN的讀者都知道,C語言簡練,源程序短。

2. 數(shù)據(jù)結(jié)構(gòu)豐富

C語言的數(shù)據(jù)類型有整型、浮點型、雙精度浮點型、字符型、數(shù)組類型、指針類型、結(jié)構(gòu)體類型和共用體類型等,足以用來實現(xiàn)各種復雜的數(shù)據(jù)結(jié)構(gòu)(如隊列、鏈表、樹、棧等)的運算。

3. 理想的結(jié)構(gòu)化語言

C語言具有豐富的結(jié)構(gòu)化控制語句(如條件語句、選擇語句和循環(huán)語句等)。C語言使用函數(shù)作為程序的模塊單位,便于實現(xiàn)程序的模塊化。

4. 運行速度快

C程序往往很緊湊而且運行速度快,可以與匯編語言相媲美,許多硬件的驅(qū)動程序都是使用C語言編寫的。

5. 可移植性強

C語言是可移植的語言,在一個系統(tǒng)上編寫的C程序,經(jīng)過很小的改動或者不改動就可以在其他系統(tǒng)上運行。

1.1.2 為什么要學習C語言

為什么要學習C語言?為什么不直接學習其他高級語言?除了1.1.1節(jié)中的介紹外,還有如下原因。

(1)C語言相比其他高級語言,如C++、Java、C#等,它可以讓人們更好地了解計算機是如何工作的,如數(shù)據(jù)在內(nèi)存中是如何存儲的,如何直接訪問內(nèi)存中的數(shù)據(jù),等等。

(2)可以毫不夸張地說,C語言是其他仸何高級語言的基礎。學好C語言,可以更容易地掌握其他語言。語言都是相通的,C語言更專注于語言的實質(zhì),而不需要分散更多的精力在集成開發(fā)環(huán)境的使用和抽象的數(shù)據(jù)概念上。

(3)C語言執(zhí)行效率高、速度快。

1.2 準備C語言程序編程

在正式開始學習C語言之前,讀者需要選擇開發(fā)環(huán)境。C語言集成開發(fā)環(huán)境比較多,沒有必要對每一種開發(fā)環(huán)境都熟練地掌握,只需要精通一種開發(fā)環(huán)境就可以了。下面分別來認識最常用的兩種開發(fā)環(huán)境:Visual C++6.0和Turbo C 2.0。

1.2.1 Visual C++6.0開發(fā)環(huán)境

本節(jié)主要介紹Visual C++6.0開發(fā)環(huán)境的安裝過程。

第1步:啟動安裝

打開Visual C++6.0安裝目錄,雙擊文件AUTORUN.EXE,啟動安裝,如圖1-1所示。

圖1-1 Visual C++6.0安裝目錄

第2步:選擇安裝版本

在第一個界面上單擊“中文版”,啟動中文版Visual C++6.0的安裝過程,如圖1-2所示。

圖1-2 選擇安裝版本

第3步:程序兼容性設置

在單擊“中文版”之后,Windows 7操作系統(tǒng)將彈出“程序兼容性助手”對話框,單擊“運行程序”按鈕,如圖1-3所示。

圖1-3 “程序兼容性助手”對話框

第4步:啟動安裝向?qū)?/b>

單擊“運行程序”按鈕后,將正式開始安裝Visual C++6.0,系統(tǒng)啟動安裝向?qū)В鐖D1-4所示。

圖1-4 安裝向?qū)?/b>

第5步:設置最終用戶許可協(xié)議

要想安裝Visual C++6.0,首先必須接受該協(xié)議。在第4步的圖中單擊“下一步”按鈕后,將彈出“最終用戶許可協(xié)議”對話框,如圖1-5所示。

圖1-5 “最終用戶許可協(xié)議”對話框

第6步:產(chǎn)品號和用戶ID設置

在“最終用戶許可協(xié)議”對話框中選擇“接受協(xié)議”單選按鈕后,再單擊“下一步”按鈕,即可彈出“產(chǎn)品號和用戶ID”對話框,如圖1-6所示。

圖1-6 “產(chǎn)品號和用戶ID”對話框

第7步:服務器安裝程序選項

在第6步中正確輸入了ID號、姓名以及公司名稱后,單擊“下一步”按鈕,即可彈出服務器安裝程序選項對話框,選中“安裝Visual C++6.0中文企業(yè)版”單選按鈕,如圖1-7所示。

圖1-7 服務器安裝程序選項

第8步:選擇公用安裝文件夾

在第7步的基礎上單擊“下一步”按鈕,即可彈出“選擇公用安裝文件夾”對話框,一般該文件夾采用默認即可,如果需要更改,只需要單擊“瀏覽”按鈕,然后選擇需要的文件夾即可,如圖1-8所示。

圖1-8 選擇公用安裝文件夾

第9步:開始安裝

在完成了以上8步設置后,即可正式開始安裝Visual C++6.0,單擊“繼續(xù)”按鈕,在彈出的對話框中單擊“確定”按鈕,如圖1-9所示。

圖1-9 開始安裝

第10步:選擇安裝路徑和安裝類型

在第9步中單擊“確定”按鈕后,將彈出選擇安裝路徑和安裝類型界面,如圖1-10所示。如果需要修改安裝路徑,可以單擊“更改文件夾”按鈕進行修改。修改完成后再選擇安裝類型,新手最好選擇典型安裝(Typical),熟練之后也可以根據(jù)需要選擇自定義安裝(Custom)。

圖1-10 Visual C++6.0安裝路徑和安裝類型界面

第11步:設置環(huán)境變量

在彈出的對話框中單擊“是”按鈕更新數(shù)據(jù)庫,如圖1-11所示。之后系統(tǒng)將開始安裝Visual C++6.0,如圖1-12所示。

圖1-11 更新數(shù)據(jù)庫

圖1-12 安裝Visual C++6.0

第12步:完成安裝

當出現(xiàn)如圖1-13所示的界面時,就完成了Visual C++6.0的安裝過程,單擊“確定”按鈕即可。

圖1-13 完成安裝

1.2.2 Turbo C 2.0開發(fā)環(huán)境

Turbo C 2.0開發(fā)環(huán)境是另外一個非常流行的開發(fā)環(huán)境,它的界面非常簡潔,軟件很小,壓縮后不到1MB。

1. 安裝

Turbo C 2.0開發(fā)環(huán)境是綠色版,不需要安裝,直接解壓縮后即可使用。

2. 屬性設置

在解壓縮后的主目錄中,找到可執(zhí)行文件TC.EXE,右擊,在彈出的快捷菜單中選擇“屬性”,在彈出的對話框中選擇“兼容性”選項卡,勾選“以兼容模式運行這個程序”復選框和“以管理員身仹運行此程序”復選框,如圖1-14所示。

圖1-14 屬性設置

3. 運行

在Turbo C 2.0的主目錄中,雙擊文件TC.EXE,即可運行該開發(fā)環(huán)境,Turbo C 2.0的主界面如圖1-15所示。

圖1-15 Turbo C 2.0的主界面

4. Turbo C 2.0的配置文件

配置文件是包含Turbo C 2.0有關信息的文件,其中存有編譯、連接的選擇和路徑等信息。可以用下述方法建立Turbo C 2.0的配置文件。

(1)建立用戶自命名的配置文件:可以從Options菜單中選擇Options/Save options命令,將當前集成開發(fā)環(huán)境的所有配置存入一個由用戶命名的配置文件中。下次啟動Turbo C 2.0時只要在DOS下輸入:

     tc/c<用戶命名的配置文件名>

就會按這個配置文件中的內(nèi)容作為Turbo C 2.0的選擇。

(2)若設置Options/Environment/Config auto save為on,則退出集成開發(fā)環(huán)境時,當前的設置會自動存放到Turbo C 2.0配置文件TCCONFIG.TC中。Turbo C 2.0在啟動時會自動尋找這個配置文件。

(3)用TCINST設置Turbo C 2.0的有關配置,并將結(jié)果存入TC.EXE中。Turbo C 2.0在啟動時,若沒有找到配置文件,則取TC.EXE中的默認值。

1.3 C程序的編寫和運行流程

要把匯編程序轉(zhuǎn)換成可執(zhí)行文件,需要通過匯編器實現(xiàn)。那么對于用C語言寫的代碼,如何把它轉(zhuǎn)換為可執(zhí)行文件呢?

要轉(zhuǎn)換C語言為可執(zhí)行文件,需要借助的工具是編譯器,轉(zhuǎn)換的過程稱為編譯。經(jīng)過編譯,生成目標程序,目標文件是機器代碼,是不能夠直接執(zhí)行的,它需要有其他文件或者其他函數(shù)庫輔助才能生成最終的可執(zhí)行文件,這個過程稱為連接,使用的工具稱為連接器。

C程序的編寫和運行流程如圖1-16所示。

圖1-16 C程序的編寫和運行流程

我們把編寫的代碼稱為源文件,或者源代碼,輸入修改源文件的過程稱為編輯,在這個過程中還要對源代碼進行布局排版,使之美觀有層次,并輔之一些說明文字,幫助我們理解代碼的含義,這些文字稱為注釋,它們僅起到說明的作用,不是代碼,不會被執(zhí)行;經(jīng)過編輯的源代碼,保存之后生成擴展名為c的文件,這些源文件并不能夠直接運行,而需要經(jīng)過編譯,把源文件轉(zhuǎn)換為以obj為擴展名的目標文件;此時目標文件再經(jīng)過一個連接的環(huán)節(jié),最終生成以exe為擴展名的可執(zhí)行文件,我們能夠運行的就是可執(zhí)行文件。

1.4 編寫第一個C程序——Hello,C

本節(jié)介紹使用Visual C++6.0開發(fā)C程序的過程。本書的所有例題都是在Visual C++6.0中開發(fā)的。

1.4.1 創(chuàng)建空工程

(1)雙擊桌面上的Visual C++6.0程序的圖標,即可打開該程序,如圖1-17所示。

圖1-17 Visual C++6.0主界面

(2)在Visual C++6.0中,選擇File→New命令,在彈出的對話框中選擇Projects選項卡,在左側(cè)列表框中選擇Win32 Console Application,在Project name文本框中輸入工程名hello,單擊Location文本框右側(cè)的按鈕,選擇工程要存放的文件夾,如圖1-18所示。

圖1-18 創(chuàng)建工程

(3)單擊OK按鈕,選中An empty project單選按鈕,單擊Finish按鈕,顯示工程信息,如圖1-19所示。單擊OK按鈕,即可完成空工程的創(chuàng)建,如圖1-20所示。

圖1-19 選中An empty project單選按鈕

圖1-20 完成空工程的創(chuàng)建

1.4.2 輸入C語言源代碼

(1)選擇File→New命令,在彈出的對話框中選擇Files選項卡,在左側(cè)列表框中選擇C++Source File,新建一個程序文檔,在File文本框中輸入hello.c,單擊Location文本框右側(cè)的按鈕,可瀏覽到程序存放的文件夾(這個文件夾要和工程文件夾保持一致),如圖1-21所示。

圖1-21 創(chuàng)建文件

(2)單擊OK按鈕,在編輯窗口輸入以下代碼。

(3)代碼輸入完成后,單擊“保存”按鈕,或者直接按下保存的快捷鍵Ctrl+S,即可保存已經(jīng)輸入完成的代碼,程序員更應該養(yǎng)成隨時保存代碼的好習慣。

1.4.3 運行C程序

(1)單擊工具欄中的Compile按鈕,或選擇Build→Compile Hello.c命令,程序開始編譯,并在輸出窗口顯示編譯信息,如圖1-22所示。

(2)單擊工具欄中的Build按鈕,或選擇Build→Build Hello.exe命令,開始連接程序,并在輸出窗口顯示連接信息,如圖1-23所示。

圖1-22 編譯程序

圖1-23 連接程序

(3)單擊工具欄中的Execute Programe按鈕,或選擇Build→Execute Hello.exe命令,即可在命令行中輸出程序的結(jié)果,如圖1-24所示。

圖1-24 運行程序

注意:可以省略第1步創(chuàng)建空工程的步驟,直接從第2步開始。但是在程序編譯時,會要求確認是否為C程序創(chuàng)建默認的工作空間,單擊“是”按鈕即可,如圖1-25所示。

圖1-25 確認對話框

1.5 C代碼結(jié)構(gòu)編寫規(guī)范

從書寫代碼清晰,便于閱讀、理解、維護的角度出發(fā),在書寫程序時應遵循以下觃則。

(1)一個說明或一個語句占一行。我們把空栺符、制表符、換行符等統(tǒng)稱為空白符。除了字符串、函數(shù)名和關鍵字,C忽略所有的空白符,在其他地方出現(xiàn)時,只起間隑作用,編譯程序?qū)λ鼈兒雎圆挥嫛R虼嗽诔绦蛑惺褂每瞻追c否,對程序的編譯不產(chǎn)生影響,但在程序中適當?shù)牡胤绞褂每瞻追梢栽黾映绦虻那逦院涂勺x性。

例如下面的代碼:

(2)用“{”和“}”括起來的部分,通常表示程序某一層次的結(jié)構(gòu)。“{”和“}”一般與該結(jié)構(gòu)語句的第一個字母對齊,并單獨占一行。

例如下面的代碼:

(3)各層次采用縮進風栺。一般來說縮進指的是存在兩個空栺或者一個制表符的空白位置。

例如下面的代碼:

(4)在程序中書寫注釋,用于說明程序做了什么,同樣可以增加程序的清晰性和可讀性。

以上4點觃則,在編程時應力求遵循,從而養(yǎng)成良好的編程習慣。

1.6 就業(yè)面試技巧與解析

本章主要讱述C語言的一些基礎知識,是對C語言整體特點的宏觀描述,在面試的過程中經(jīng)常會涉及。

1.6.1 面試技巧與解析(一)

在面試的過程中,本章很多知識點都是面試官經(jīng)常提問的對象。如C語言的特點、C語言程序的組成、C語言和其他主流語言的異同點等,主要考查求職者對C語言的整體把握能力,這就要求讀者在學習本章的過程中,要重點掌握上述知識點,如果有條件,可以模擬求職過程,增大面試通過率。

1.6.2 面試技巧與解析(二)

面試官:簡述C語言的特點。

應聘者:C語言簡潔、緊湊,使用方便、靈活;數(shù)據(jù)結(jié)構(gòu)類型豐富;具有結(jié)構(gòu)化的控制語句;語法陎制不太嚴栺,程序設計自由度大;生成目標代碼質(zhì)量高,程序執(zhí)行效率高;與匯編語言相比,用C語言寫的程序可移植性好。

面試官:簡述C語言程序的組成。

應聘者:一個完整的C語言程序主要包含宏定義與預處理和函數(shù)兩大部分,其中函數(shù)又分為函數(shù)的首部和函數(shù)體兩部分,函數(shù)體包括聲明部分和執(zhí)行部分。

主站蜘蛛池模板: 景德镇市| 昔阳县| 张家界市| 全椒县| 修武县| 湖南省| 德格县| 荔波县| 米易县| 竹北市| 灵山县| 渑池县| 许昌市| 介休市| 凤冈县| 桂东县| 汝州市| 岐山县| 惠安县| 通化县| 黔江区| 邓州市| 东方市| 湖口县| 宁武县| 石渠县| 敦化市| 永仁县| 宝山区| 宜章县| 卓尼县| 渑池县| 腾冲县| 巴里| 石景山区| 临夏县| 恭城| 陵水| 武强县| 平顶山市| 侯马市|