C語(yǔ)言經(jīng)過(guò)時(shí)代的洗禮,仍然是it互聯(lián)網(wǎng)發(fā)展不可替代的一門編程語(yǔ)言。它的優(yōu)點(diǎn)網(wǎng)上已經(jīng)有很多總結(jié),當(dāng)然缺點(diǎn)也有,但是如果你是做底層開發(fā)或者嵌入式開發(fā)就無(wú)法避免與這門語(yǔ)言進(jìn)行接觸。
C語(yǔ)言用處之廣我們就不再贅述,在這里要明確的是,我們耳熟能詳?shù)囊恍┚幊陶Z(yǔ)言,例如java、python等其他語(yǔ)言,都是面向?qū)ο蟮恼Z(yǔ)言,我們已經(jīng)將它的一些庫(kù)進(jìn)行封裝,直接拿來(lái)用就可以了,所以是面向結(jié)果面向?qū)ο蟮恼Z(yǔ)言,而C語(yǔ)言則是一門面向過(guò)程的語(yǔ)言,因?yàn)槲覀兪菍⒄麄€(gè)運(yùn)算過(guò)程進(jìn)行code出來(lái)的,而我們?cè)谶M(jìn)行調(diào)用的一些函數(shù),這個(gè)函數(shù)體本身是由我們自己來(lái)寫的,這就是與其他語(yǔ)言的不同之處。
下面就開始我們C語(yǔ)言的第一次編程吧~
#include <stdio.h>
int main(){
/* Write C code in this online editor and run it. */
printf("Hello, World! \n");
return 0;
}
打開你的C語(yǔ)言編輯器,來(lái)運(yùn)行一下你的代碼,看一下你的運(yùn)行結(jié)果是什么吧~
是不是和我一樣:
Hello, World!
如果你的運(yùn)行結(jié)果也是Hello,world!那么恭喜你已經(jīng)進(jìn)入編程世界的大門了。
新手同學(xué)可能對(duì)這段代碼不太理解,那么我們就詳細(xì)解釋一下這個(gè)代碼是什么意思。
#include <stdio.h>
這個(gè)是編譯預(yù)處理指令,在C語(yǔ)言中,可以引用編譯器內(nèi)置OK的預(yù)編譯指令,也可以等以后對(duì)C語(yǔ)言更加了解了之后自己定義預(yù)編譯指令。
其中,預(yù)編譯指令的語(yǔ)法結(jié)構(gòu)是以“#”為開頭,include就是包含的意思,包含某個(gè)庫(kù)。因?yàn)樵谑褂脴?biāo)準(zhǔn)函數(shù)庫(kù)中的輸入輸出函數(shù)的時(shí)候,編譯系統(tǒng)要求該段程序提供相關(guān)的信息,#include<stdio.h>的作用就是用來(lái)提供這些信息的。
stdio.h是C編譯系統(tǒng)提供的一個(gè)文件名,stdio的英文全拼是“standard input & output”的縮寫,即有關(guān)標(biāo)準(zhǔn)輸入輸出的信息。在程序中用到系統(tǒng)提供的標(biāo)準(zhǔn)函數(shù)庫(kù)中的輸入輸出函數(shù)時(shí),應(yīng)在程序的開頭寫上一行:#include"stdio.h"或者是#include<stdio.h>,這樣才能調(diào)用庫(kù)函數(shù)。
"..."與<...> 的作用相同,不過(guò)要注意的是,如果是自己定義的庫(kù)函數(shù),則必須使用""
他們兩個(gè)的主要的差別是在于查找效率上不同,#include<stdio.h>一般用于包含的系統(tǒng)文件,它是查找先從系統(tǒng)目錄查找開始查找;#include "stdio.h"一般用包含項(xiàng)目文件,它是查找先從項(xiàng)目目錄查找開始查找。所以如果是自己寫的項(xiàng)目,用""進(jìn)行調(diào)用。
main()函數(shù)是在每一個(gè)C語(yǔ)言項(xiàng)目中都必不可少的,而且有且僅有一個(gè)main函數(shù),這一點(diǎn)必須要搞清楚,因?yàn)楹罄m(xù)無(wú)論你在這個(gè)項(xiàng)目中寫了多少個(gè)函數(shù),其實(shí)都是運(yùn)行的main函數(shù),如果在main函數(shù)中有調(diào)用到這個(gè)函數(shù),那么就說(shuō)明這個(gè)函數(shù)會(huì)跑到。
在編寫C語(yǔ)言中,printf()是stdio.h中的一個(gè)標(biāo)準(zhǔn)輸入輸出函數(shù),如果我們?cè)诔绦虼a中用到了這個(gè)函數(shù)就一定要在頭文件中加入#include<stdio.h>。否則就會(huì)編譯報(bào)錯(cuò)。printf函數(shù)就是打印字符串等等的,編輯器運(yùn)行出來(lái)的結(jié)果就是由該函數(shù)打印出來(lái)的,所以至關(guān)重要的。
return 就是返回一個(gè)數(shù)值,因?yàn)檫@個(gè)main 函數(shù)是int(整型)的,且沒(méi)有其他參數(shù),所以我們返回一個(gè)0,如果有其他參數(shù)或者是其他類型的函數(shù),返回值的類型或者數(shù)值也不相同。
如果你看了這篇文章還不是很明白的話,關(guān)注我,我會(huì)帶你在之后的學(xué)習(xí)中慢慢了解~點(diǎn)關(guān)注,不迷路~