C语言从零开始C语言的基本结构.ppt
《C语言从零开始C语言的基本结构.ppt》由会员分享,可在线阅读,更多相关《C语言从零开始C语言的基本结构.ppt(25页珍藏版)》请在三一办公上搜索。
1、1,第二章,C語言從零開始(C語言的基本結構),2,第二章 C語言從零開始(C語言的基本結構),在第一章中,相信讀者已經熟悉如何編譯C語言程式。在本章中,我們將透過一個非常簡單的C語言程式來說明C語言的程式結構。並且從本章開始,我們將實際撰寫每一個C語言範例程式,在撰寫程式之前,我們必須先提醒讀者以下幾件事。(1)寫程式就和學數學一樣,必須親手練習,每當讀者看完一個範例之後,請自行動手將程式內容一個字一個字的輸入到檔案中。並且詢問自己,本行程式的意義為何,是否可以略過以及改寫。除此之外,我們並不建議讀者強記各種指令敘述與語法細節,但由逐字輸入及練習撰寫程式的過程中,讀者將自然地記住這些指令敘述
2、與語法。(2)寫程式就像是堆積木一樣,任何一個大型程式都是由小型程式、函式或程式區塊所組成,因此當學習完畢本書所有範例時,不必懼怕開發中大型程式的挑戰,閱讀本書完畢,您應該具有開發1000行以上程式的能力。【註】:開發有效率的大型程式尚須要配合軟體工程的理論以及系統分析的能力,此時您可能需要更多有關於這方面的訓練。,3,大綱,2.1最簡單的C程式範例2.2註解(comment)2.3前置處理指令#include2.4C程式的進入點main()函式2.5敘述(statement)2.6自由格式與空白字元2.7深入C語言的文法【補充】2.8本章回顧,4,下面是一個簡單的C程式範列,請逐字將之輸入到
3、.c的檔案中,慢慢培養屬於自己的程式風格。(若您的IDE已經幫您建立了某些預設內容,請先將它刪除後再輸入。)範例2-1:ch2_01.c(檔案位於隨書光碟 ch02ch2_01.c)。,2.1最簡單的C程式範例,5,2.1最簡單的C程式範例,執行結果:範例說明:雖然範例2-1是一個只有14行的C語言程式,但是卻說明了C程式的基本結構如下,我們將分別加以說明。,歡迎使用C語言!這是一個簡單的C程式.請按任意鍵繼續.,6,2.1最簡單的C程式範例,圖2-1 C程式基本結構,7,2.2註解(comment),C的註解符號為/*.*/,在/*到*/之間的所有文字都將被編譯器忽略(事實上,註解將被前置處
4、理器刪除後才輸入給編譯器),換句話說,沒有這些註解並不會影響程式的正確性。所以這些文字可以當作說明該程式或程式片斷之用,善用註解文字將有助於日後維護程式時,快速了解程式功用。(在程式的任何地方都可以加入註解)由於/*/具有換行功能,也就是可以將註解跨行描述,因此範例2-1的註解可以改寫如下。,8,2.2註解(comment),【謬誤】:由於/*/註解格式在編譯器中,會從第一個遇到的/*開始視為註解文字,直到遇到第一個*/為止,因此並不允許使用巢狀註解文字,例如下列的程式碼中,就犯了這個錯誤。【C+】:C+提供了另一種單行註解符號/,凡是/之後的整行文字都會被視為註解。,錯誤的巢狀註解,9,在C
5、語言中,前置處理指令是前面出現#符號的指令,嚴格說起來,前置處理指令並非C語言的指令,因為這些指令會在程式進行編譯之前,先被前置處理器(preprocessor)置換成某些程式碼,因此前置處理指令又稱為假指令。在此,我們先說明#include這個前置處理指令,至於其他的前置處理指令,則留待後面章節中再做說明。#include的功用在於引入標頭檔,所謂標頭檔就是放置某些已經撰寫完成函式內容的函式庫檔案,這些標頭檔可能是由編譯器所提供,也可能是自行撰寫的函式庫。我們必須先引入標頭檔,才可以使用標頭檔內所提供的函式。例如:stdio.h標頭檔中定義了printf()與scanf()函式的內容,std
6、lib.h標頭檔中定義了system()函式的內容。因此,若我們在程式中要使用這些函式的話,就必須使用#include 及#include 將這些函式庫檔案引入。,2.3前置處理指令#include,10,2.3前置處理指令#include,圖2-2 包含前置指令的編譯過程,11,2.3前置處理指令#include,#include引入標頭檔可分為下列兩種格式:#include xxx.h為C編譯器提供的標頭檔,並且存放在編譯器內定的目錄中,使用此種格式,前置處理器會自動到內定目錄中找到標頭檔。【註】:目前絕大部分的C編譯器都提供了ANSI C所規範的標頭檔及其函式,除此之外,某些編譯器還提供
7、了一些特別的標頭檔函式庫,不過我們並不建議使用這些非ANSI C的函式,否則將會降低程式的可攜性。下列是所有ANSI C所規範的函式庫標頭檔名稱及功能。,12,2.3前置處理指令#include,ANSI C函式庫標頭檔,13,【函式庫的功能】:引入的函式庫會在前置處理時被載入,通常函式庫會記錄許多的函式,除此之外,函式庫也可能定義了某些符號常數,例如數學的無限大在電腦中根本無法完全實現,因此只能用可儲存的最大值來代表,例如INT_MAX代表在int資料型態下的最大值2147483647,而INT_MAX的定義也被包含在limits.h之中。,2.3前置處理指令#include,14,2.3前
8、置處理指令#include,#include ooo.hooo.h不是編譯器提供的標頭檔,所以程式設計師必須標明該檔案所在目錄,以便前置處理器取得該檔案。【解析與說明】:大多數由編譯器所提供的標頭檔,都會使用英文縮寫來表示該檔案所包含的函式庫類型,例如:math.h就是包含數學函式庫的標頭檔,stdio.h就是包含標準輸出入(standard input and output)的標頭檔,您最好根據此原則來命名自行撰寫的函式庫檔案,並於檔案內註解該檔案各函式庫的功用及各引數的規定,以便日後自行使用或提供他人使用。,15,2.4C程式的進入點main()函式,C語言屬於模組化設計的一種語言,而C語
9、言的模組則是以函式來加以表示。換句話說,C程式是由各個不同功能的函式所組成,並且函式與函式之間可以透過呼叫以及回傳值方式加以聯繫,一個函式的基本定義格式如下:函式的基本格式為函式名稱(),由於函式可以於被呼叫時接受呼叫者傳入引數,因此這些引數必須在()內加以宣告,而函式也可以回傳資料給呼叫者,所以我們也必須在函式名稱前面宣告回傳值的資料型態(關於資料型態請見第三章)。函式的內容則是包含在與 之間。,函式回傳值型態 函式名稱(傳入引數)函式內容(敘述群),16,main()函式是命令列(Console Mode)C程式的進入點,換句話說,當我們在命令列式的作業系統中執行由C所撰寫的應用程式時,會
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 从零开始 基本 结构
链接地址:https://www.31ppt.com/p-5426242.html