亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

C語言

分析C語言一個簡單程序

時間:2024-07-07 18:26:50 C語言 我要投稿
  • 相關推薦

分析C語言一個簡單程序

  如何分析C語言一個簡單程序?本文主要介紹C語言簡單的程序,這里給大家詳細介紹C語言代碼,對函數(shù)概念、頭文件、自定義函數(shù)等基礎信息的講解,希望能幫助剛剛學習的同學。

  首先給大家一個簡單的例子,讓讀者有個整體的認識,代碼如下:

1
2
3
4
5
6
#include <stdio.h>
int main()
{
 puts;
 return 0;
}

  函數(shù)的概念

  先來看第4行代碼,這行代碼會在顯示器上輸出“腳本之家”。前面我們已經(jīng)講過,puts 后面要帶( ),字符串也要放在( )中。

  在C語言中,有的語句使用時不能帶括號,有的語句必須帶括號。帶括號的稱為函數(shù)(Function) 。

  C語言提供了很多功能,例如輸入輸出、獲得日期時間、文件操作等,我們只需要一句簡單的代碼就能夠使用。但是這些功能的底層都比較復雜,通常是軟件和硬件的結(jié)合,還要要考慮很多細節(jié)和邊界,如果將這些功能都交給程序員去完成,那將極大增加程序員的學習成本,降低編程效率。

  好在C語言的開發(fā)者們?yōu)槲覀冏隽艘患檬,他們已?jīng)編寫了大量代碼,將常見的基本功能都完成了,我們可以直接拿來使用。但是現(xiàn)在問題來了,那么多代碼,如何從中找到自己需要的呢?一股腦將所有代碼都拿來顯然是非常不明智的。

  這些代碼,早已被分門別類地放在了不同的文件中,并且每一段代碼都有唯一的名字。使用代碼時,只要在對應的名字后面加上( )就可以。這樣的一段代碼能夠獨立地完成某個功能,一次編寫完成后可以重復使用,被稱為函數(shù)(Function)。讀者可以認為,函數(shù)就是一段可以重復使用的代碼。

  函數(shù)的一個明顯特征就是使用時必須帶括號( ),必要的話,括號中還可以包含待處理的數(shù)據(jù)。例如puts("腳本之家")就使用了一段具有輸出功能的代碼,這段代碼的名字是 puts,"腳本之家" 是要交給這段代碼處理的數(shù)據(jù)。使用函數(shù)在編程中有專業(yè)的稱呼,叫做函數(shù)調(diào)用(Function Call)。

  如果函數(shù)需要處理多個數(shù)據(jù),那么它們之間使用逗號,分隔,例如:

  pow(10, 2);

  該函數(shù)用來求10的2次方。

  需要注意的是,C語言中的函數(shù)和數(shù)學中的函數(shù)不是同一個概念,不要拿兩者對比。函數(shù)的英文名稱是 Function,它還有“功能”的意思。大陸將 Function 翻譯為“函數(shù)”,而臺灣地區(qū)翻譯為“函式”,讀者要注意區(qū)分。

  自定義函數(shù)和main函數(shù)

  C語言自帶的函數(shù)稱為庫函數(shù)(Library Function) 。庫(Library)是編程中的一個基本概念,可以簡單地認為它是一些列函數(shù)的集合,在磁盤上往往是一個文件夾。C語言自帶的庫稱為標準庫(Standard Library) ,其他公司或個人開發(fā)的庫稱為第三方庫(Third-Party Library) 。

  除了庫函數(shù),我們還可以編寫自己的函數(shù),拓展程序的功能。自己編寫的函數(shù)稱為自定義函數(shù)。自定義函數(shù)和庫函數(shù)在編寫和使用方式上完全相同,只是由不同的機構(gòu)來編寫。

  示例中第2~6行代碼就是我們自己編寫的一個函數(shù)。main 是函數(shù)的名字,( ) 表明這是函數(shù)定義,{ } 之間的代碼是函數(shù)要實現(xiàn)的功能。

  函數(shù)可以接收待處理的數(shù)據(jù),同樣可以將處理結(jié)果告訴我們;使用return可以告知處理結(jié)果。示例中第5行代碼表明,main 函數(shù)的處理結(jié)果是整數(shù) 0。return 可以翻譯為“返回”,所以函數(shù)的處理結(jié)果被稱為返回值(Return Value) 。

  第2行代碼中,int 是 integer 的簡寫,意為“整數(shù)”。它告訴我們,函數(shù)的返回值是整數(shù)。

  需要注意的是,示例中的自定義函數(shù)必須命名為 main。C語言規(guī)定,一個程序必須有且只有一個 main 函數(shù)。main 被稱為主函數(shù),是程序的入口函數(shù),程序運行時從 main 函數(shù)開始,直到 main 函數(shù)結(jié)束(遇到 return 或者執(zhí)行到函數(shù)末尾時,函數(shù)才結(jié)束)。

  也就是說,沒有 main 函數(shù)程序?qū)⒉恢缽哪睦镩_始執(zhí)行,運行時會報錯。

  綜上所述:第2~6行代碼定義了主函數(shù) main,它的返回值是整數(shù) 0,程序?qū)倪@里開始執(zhí)行。main 函數(shù)的返回值在程序運行結(jié)束時由系統(tǒng)接收。

  關于自定義函數(shù)的更多內(nèi)容,我們將在《C語言函數(shù)》一章中詳細講解,這里不再展開討論。

  有的教材中將 main 函數(shù)寫作:

1
2
3
4
void main()
{
 // Some Code...
}

  這在 VC6.0 下能夠通過編譯,但在 C-Free、GCC 中卻會報錯,因為這不是標準的 main 函數(shù)的寫法,大家不要被誤導,最好按照示例中的格式來寫。

  頭文件的概念

  還有最后一個問題,示例中第1行的#include 是什么意思呢?

  C語言開發(fā)者們編寫了很多常用函數(shù),并分門別類的放在了不同的文件,這些文件就稱為頭文件(header file) 。每個頭文件中都包含了若干個功能類似的函數(shù),調(diào)用某個函數(shù)時,要引入對應的頭文件,否則編譯器找不到函數(shù)。

  實際上,頭文件往往只包含函數(shù)的說明,也就是告訴我們函數(shù)怎么用,而函數(shù)本身保存在其他文件中,在鏈接時才會找到。對于初學者,可以暫時理解為頭文件中包含了若干函數(shù)。

  引入頭文件使用#include命令,并將文件名放在< >中,#include 和 < > 之間可以有空格,也可以沒有。

  頭文件以.h為后綴,而C語言代碼文件以.c為后綴,它們都是文本文件,沒有本質(zhì)上的區(qū)別,#include 命令的作用也僅僅是將頭文件中的文本復制到當前文件,然后和當前文件一起編譯。你可以嘗試將頭文件中的內(nèi)容復制到當前文件,那樣也可以不引入頭文件。

  .h中代碼的語法規(guī)則和.c中是一樣的,你也可以#include ,這是完全正確的。不過實際開發(fā)中沒有人會這樣做,這樣看起來非常不專業(yè),也不規(guī)范。

  較早的C語言標準庫包含了15個頭文件,stdio.h 和 stdlib.h 是最常用的兩個:

  stdio 是 standard input ouput 的縮寫,stdio.h 被稱為“標準輸入輸出文件”,包含的函數(shù)大都和輸入輸出有關,puts() 就是其中之一。

  stdlib 是 standard library 的縮寫,stdlib.h 被稱為“標準庫文件”,包含的函數(shù)比較雜亂,多是一些通用工具型函數(shù),system() 就是其中之一。

  最后的總結(jié)

  初學編程,有很多基本概念需要了解,本節(jié)就涉及到很多,建議大家把上面的內(nèi)容多讀幾遍,必將有所收獲。

  本節(jié)開頭的示例是一個C語言程序的基本結(jié)構(gòu),我們不妨整理一下思路,從整體上再分析一遍:

  1) 第1行引入頭文件 stdio.h,這是編程中最常用的一個頭文件。頭文件不是必須要引入的,我們用到了 puts 函數(shù),所以才引入 stdio.h。例如下面的代碼完全正確:

1
2
3
4
int main()
{
 return 0;
}

  我們沒有調(diào)用任何函數(shù),所以不必引入頭文件。

  2) 第2行開始定義主函數(shù) main。main 是程序的入口函數(shù),一個C程序必須有 main 函數(shù),而且只能有一個。

  3) 第4行調(diào)用 puts 函數(shù)向顯示器輸出字符串。

  4) 第5行是 main 函數(shù)的返回值。程序運行正確一般返回 0。

  以上就是對 C語言簡單程序的分析,希望能幫到初學者。


【分析C語言一個簡單程序】相關文章:

C語言程序分析08-27

C語言程序試題04-26

c語言鏈接程序08-26

C語言經(jīng)典程序題09-17

C語言程序介紹08-23

c語言入門經(jīng)典程序08-01

C語言程序的實現(xiàn)09-27

C語言簡單的字符驅(qū)動程序介紹09-22

C語言程序書寫格式08-30