App下載

關(guān)于C語言的第一個(gè)程序的詳細(xì)分析

猿友 2021-07-28 14:38:35 瀏覽數(shù) (2166)
反饋

當(dāng)前很多比較流行的編程語言,例如 Java、Python、C++ 等,都是基于 C 語言,說 C 語言是現(xiàn)代編程語言的開山鼻祖也毫不為過。如果想要成為一個(gè)程序編程高手,那么學(xué)習(xí) C 語言是必不可少的。下面我將通過 C 語言一個(gè)簡單的代碼程序,詳細(xì)分析程序的內(nèi)容。

一、代碼

#include <stdio.h>
int main()
{
    puts("Hello World");
    return 0;
}

二、頭文件

?#include<stdio.h>?

當(dāng)C語言開發(fā)者編寫了許多的常用函數(shù),并把它們分別放在不同的文件下,而這些文件就被稱之頭文件。如果想要使用這些函數(shù),就得把函數(shù)所在頭文件引入,否則編譯器就找不到函數(shù)。

這個(gè)概念和 Java 中的導(dǎo)包、Python 中的倒庫有一些相似,在 Java 和 Python 中可以通過 import 關(guān)鍵字來導(dǎo)入包和庫,這樣才可以調(diào)用包或者庫中所有的方法或者函數(shù)。

在C語言中,引入頭文件使用的是 ?#include? 命令,并把文件名放在? <> ?之間。?#include ?和? <> ?之間可以有空格,也可以沒有。

頭文件是以? .h ?作為后綴,C語言代碼文件中則是以? .c ?作為后綴,它們都屬于文本文件,在本質(zhì)上沒有什么區(qū)別。

#include 命令的作用不過就是把頭文件中的內(nèi)容復(fù)制到當(dāng)前文件下面,然后跟著當(dāng)前文件一起編譯。如果你把頭文件的內(nèi)容復(fù)制到當(dāng)前文件中,那么這樣你就不用引入頭文件。

注:頭文件并不是 C 語言中必須要引入的部分,如果下面程序要實(shí)現(xiàn)的功能沒有頭文件里面的函數(shù),那么就不需要將頭文件引入。例如:

int main(){
    return 0;
}

這里沒有使用 puts 函數(shù),也因此無需引入頭文件。

三、函數(shù)的概念

?puts("Hello World")?

這行代碼在顯示器上會(huì)顯示出“Hello World”,相當(dāng)于 Java 中? System.out.println?或者 Python 中的 ?print?,有輸出打印的意思。

在 C 語言中,有一些語句不需要帶括號(hào),而有的則是必須要帶括號(hào),而這一些帶括號(hào)的就被稱之為函數(shù)(Function)。

雖然我們?cè)谇么a的過程,只需要一句代碼就能夠?qū)崿F(xiàn)想要的效果。但是實(shí)現(xiàn)這些功能的底層都比較復(fù)雜,往往是軟件和硬件的結(jié)合,還需要考慮到方方面面。如果要把這些功能都讓程序員來完成,那么無疑就會(huì)增大程序員的學(xué)習(xí)成本以及降低編程效率。

因此,這些代碼早就被專門分類放在不同的文件里,而且每一段代碼都有一個(gè)自己唯一的名字。當(dāng)我們需要使用這個(gè)功能的時(shí)候,只需要在對(duì)應(yīng)的名字后面加上一個(gè) () 就可以了。像這種一段代碼就可以獨(dú)立完成某一些功能,一次編寫后就可以反復(fù)調(diào)用,也就被稱之為函數(shù)。就如 puts(),它就是一段寫好了,具有輸出功能的代碼。

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

C 語言中自身就有的函數(shù)就被稱之為庫函數(shù)(Library Function)。庫(Library)在編程語言中是一個(gè)很基本的概念,可以簡單地把它看作是一些個(gè)函數(shù)的集合,在磁盤上相當(dāng)于是一個(gè)文件夾,函數(shù)就是它下面的子文件。

C 語言自身攜帶的庫稱作標(biāo)準(zhǔn)庫(Standard Library),而其他公司或者是個(gè)人開發(fā)的庫,叫做第三方庫(Third-Party Library)。

當(dāng)然,如果標(biāo)準(zhǔn)庫和第三方庫都沒有自己想要的函數(shù)方法,也可以編寫自己的函數(shù),拓展程序的功能,而這一系列操作也就是自定義函數(shù)。在編寫和使用方式上,自定義函數(shù)和庫函數(shù)是一致的,只是不同的機(jī)構(gòu)、不同的人編寫而已。

如上面的代碼,?int main(){ 功能 };?

  • int    是 integer 的縮寫,意思是"整數(shù)”。它在這里的意思,就是為了告訴我們,這個(gè)函數(shù)返回的值只能是整數(shù)。
  • main    是這個(gè)函數(shù)的名字。
  • ()    表示這是函數(shù)定義。
  • {};    大括號(hào)里面則是這個(gè)函數(shù)要實(shí)現(xiàn)的功能。

注:

C語言規(guī)定,每一個(gè)程序都必須有且僅有一個(gè) main 函數(shù),而 main 函數(shù)也被稱之為主函數(shù),是程序的入口函數(shù),每一個(gè)程序都是從 main 函數(shù)開始,直到 main 函數(shù)結(jié)束。(遇到 return 或者執(zhí)行到函數(shù)末尾,函數(shù)才結(jié)束。)

這一點(diǎn)就相當(dāng)于 Java 中的 main 主方法,必須有這一個(gè) main 方法,Java程序才可以運(yùn)行。

所以說,如果沒有 main 函數(shù),那么 C 語言程序就不知道開始的入口,在運(yùn)行的時(shí)候也就會(huì)產(chǎn)生報(bào)錯(cuò)。

五、總結(jié)

以上就是關(guān)于通過一段簡單的 C 語言程序初步了解 C 語言的詳細(xì)內(nèi)容,想要了解更多關(guān)于 C 語言的其他內(nèi)容,可以閱讀瀏覽W3Cschool相關(guān)內(nèi)容的文章,如果本篇文章有幫助到您的學(xué)習(xí),也希望大家能夠?qū)ξ覀兌喽嗟仃P(guān)注和支持!


C

0 人點(diǎn)贊