日韩欧美视频第二区,秋霞成人午夜鲁丝一区二区三区,美女日批视频在线观看,av在线不卡免费

電子開發網

電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 電子開發網 >> 編程學習 >> C語言 >> 正文

C語言的程序結構

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2018/4/2
1 基本程序結構

任何一種程序設計語言都具有特定的語法規則和規定的表達方法。一個程序只有嚴格按照語言規定的語法和表達方式編寫,才能保證編寫的程序在計算機中能正確地執行,同時也便于閱讀和理解。

為了了解C語言的基本程序結構,我們先介紹幾個簡單的C程序。


這是一個最簡單的C程序,其執行結果是在屏幕上顯示一行信息:

RUN <enter>
This is a sample of c program.


本程序的執行過程是:
• 程序從m a i n ( )處開始。
• 變量a代表一個整數,并且初始值為3。
• 執行程序(函數)p r o c ( );屏幕上顯示H e l l o,\ n為轉義字符,代表換行的意思。
• 執行程序(函數)f u n c ( );并將結果賦予a,此時,a的值為2。
• 屏幕上顯示“This is a sample of c program.”。
程序執行的結果是在屏幕顯示兩行信息:
R U N <enter>
H e l l o .
This is a sample of c program.
程序中/ * . . . . . * /表示對程序的說明(稱為注釋),不參與程序的運行。注釋文字可以是任意字符,如漢字、拼音、英文等。

本程序的功能是對從鍵盤輸入的長方體的長、寬、高三個整型量求其體積的值。程序運行的情況如下:

R U N ↵
5 , 8 , 6 ↵
v = 240

在本例中,m a i n函數在調用v o l u m e函數時,將實際參數x、y、z的值分別傳送給v o l u m e函數中的形式參數a、b、c。經過執行v o l u m e函數得到一個結果(即v o l u m e函數中變量p的值)并把這個值賦給變量v。

從上面程序例子,可以看出C程序的基本結構。

C程序為函數模塊結構,所有的C程序都是由一個或多個函數構成,其中必須只能有一個主函數m a i n ( )。程序從主函數開始執行,當執行到調用函數的語句時,程序將控制轉移到調用函數中執行,執行結束后,再返回主函數中繼續運行,直至程序執行結束。C程序的函數是由編譯系統提供的標準函數(如p r i n t f、s c a n f等)和由用戶自己定義的函數(如p r o c、f u n c、v o l u m e等)。雖然從技術上講,主函數不是C語言的一個成分,但它仍被看做是其中的一部分,因此,“m a i n”不能用作變量名。

函數的基本形式是:函數類型函數名(形式參數)形式參數說明;

{

數據說明部分;
語句部分;

}

其中:函數頭包括函數說明、函數名和圓括號中的形式參數(如int volume(a,b,c)),如果函數

調用無參數傳遞,圓括號中形式參數為空(如void proc()函數)。形式參數說明指定函數調用傳遞參數的數據類型(如例1 . 3中語句int a,b,c;)。函數體包括函數體內使用的數據說明和執行函數功能的語句,花括號{和}表示函數體的

開始和結束。

1.3.2 函數庫和鏈接

從技術上講,純粹由程序員自己編寫的語句構成C語言程序是可能的,但這卻是罕見的。因為所有的C編譯程序都提供能完成各種常用任務的函數—函數庫(如p r i n t f、s c a n f等)。C編譯程序的實現者已經編寫了大部分常見的通用函數。當我們調用一個別人編寫的函數時編譯程序“記憶”它的名字。隨后,“鏈接程序”把我們編寫的程序同標準函數庫中找到的目標碼結合起來,這個過程稱為“鏈接”。

保存在函數庫中的函數是可重定位的。這意味著其中機器碼指令的內存地址并未絕對地確定, 只有偏移量是確定的。當把程序與標準函數庫中的函數相鏈接時,內存偏移量被用來產生實際地址。有關重定位的詳細內容,請查閱其他技術書籍。

編寫程序時用到的函數,許多都可以在標準函數庫中找到。它們是可以簡單地組合起來的程序構件。編寫了一個經常要用的函數之后,可將其放入庫中備用。

1.3.3 開發一個C程序

開發一個C程序,包括以下四步:

1) 程序設計程序設計亦稱程序編輯。程序員用任一編輯軟件(編輯器)將編寫好的C程序輸入計算機,并以文本文件的形式保存在計算機的磁盤上。編輯的結果是建立C源程序文件。C程序習慣上使用小寫英文字母,常量和其他用途的符號可用大寫字母。C語言對大、小寫字母是有區別的。關鍵字必須小寫。

2) 程序編譯編譯是指將編輯好的源文件翻譯成二進制目標代碼的過程。編譯過程是使用C語言提供的編譯程序(編譯器)完成的。不同操作系統下的各種編譯器的使用命令不完全相同,使用時應注意計算機環境。編譯時,編譯器首先要對源程序中的每一個語句檢查語法錯誤,當發現錯誤時,就在屏幕上顯示錯誤的位置和錯誤類型的信息。此時,要再次調用編輯器進行查錯修改。然后,再進行編譯,直至排除所有語法和語義錯誤。正確的源程序文件經過編譯后在磁盤上生成目標文件。

3 ) 鏈接程序編譯后產生的目標文件是可重定位的程序模塊,不能直接運行。鏈接就是把目標文件和其他分別進行編譯生成的目標程序模塊(如果有的話)及系統提供的標準庫函數鏈接在一起,生成可以運行的可執行文件的過程。鏈接過程使用C語言提供的鏈接程序(鏈接器)完成,生成的可執行文件存在磁盤中。

4) 程序運行生成可執行文件后,就可以在操作系統控制下運行。若執行程序后達到預期目的,則C程序的開發工作到此完成。否則,要進一步檢查修改源程序,重復編輯—編譯

—鏈接—運行的過程,直到取得預期結果為止。

大部分C語言都提供一個獨立的開發集成環境,它可將上述四步連貫在一個程序之中。本書所涉及的程序全部在Turbo C環境中進行。

1.3.4 C語言的關鍵字

表1 - 2列舉了3 2個關鍵字,它們與標準C句法結合,形成了程序設計語言C。

C語言的關鍵字都用小寫字母。C語言中區分大寫與小寫,e l s e是關鍵字,“E L S E”則不是。在C程序中,關鍵字不能用于其它目的,即不允許將關鍵字作為變量名或函數名使用。

Tags:C語言的程序結構,C語言,程序結構  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊。 昵稱:注冊  登錄
[ 查看全部 ] 網友評論
關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
主站蜘蛛池模板: 湄潭县| 揭西县| 和田县| 陆丰市| 紫阳县| 吉木萨尔县| 习水县| 千阳县| 河南省| 丹东市| 林周县| 九江县| 霸州市| 韶关市| 尖扎县| 南岸区| 武邑县| 泗水县| 威远县| 城固县| 迁安市| 柘荣县| 德庆县| 自治县| 湟中县| 东城区| 栾城县| 凤山市| 呈贡县| 武威市| 专栏| 金塔县| 若尔盖县| 丹寨县| 洪江市| 上犹县| 江城| 河源市| 迁西县| 阳西县| 涞水县|