linux中有main函數(shù);linux中main函數(shù)的原型是“int main(int argc,char *argv[]){return 0;}”,c語(yǔ)言規(guī)定了main函數(shù)的參數(shù)只能有兩個(gè),一個(gè)是argc,一個(gè)是argv,由于main函數(shù)不能被其它函數(shù)調(diào)用, 因此不可能在程序內(nèi)部取得實(shí)際值。
本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。
linux有main函數(shù)嗎
main函數(shù)大家都不陌生,在linux的驅(qū)動(dòng)調(diào)試中我們經(jīng)常需要編寫簡(jiǎn)單的linux應(yīng)用層代碼對(duì)驅(qū)動(dòng)進(jìn)行測(cè)試。
linux中對(duì)main函數(shù)的定義如下:
int?main(int?argc,char?*argv[]);
linux中main函數(shù)的原型
int?main(int?argc,char?*argv[]) { return?0; }
C語(yǔ)言規(guī)定了main函數(shù)的參數(shù)只能有兩個(gè),一個(gè)是argc,一個(gè)是argv并且,argc只能是整數(shù),第二個(gè)必須是指向字符串的指針數(shù)組
由于main函數(shù)不能被其它函數(shù)調(diào)用, 因此不可能在程序內(nèi)部取得實(shí)際值。那么,在何處把實(shí)參值賦予main
函數(shù)的形參呢? 實(shí)際上,main函數(shù)的參數(shù)值是從操作系統(tǒng)命令行上獲得的。當(dāng)我們要運(yùn)行一個(gè)可執(zhí)行文件時(shí),
在DOS提示符下鍵入文件名,再輸入實(shí)際參數(shù)即可把這些實(shí)參傳送到main的形參中去。DOS提示符下命令行的一般形式為:
C:>可執(zhí)行文件名 參數(shù) 參數(shù)……; 但是應(yīng)該特別注意的是,main 的兩個(gè)形參和命令行中的參數(shù)在 位置上不是一一對(duì)應(yīng)的
argc: 參數(shù)表示命令行中參數(shù)的個(gè)數(shù)(注意 文本名本身也是一個(gè)參數(shù)),
rgc的值是在輸入命令行時(shí)由系統(tǒng)按實(shí)際參數(shù)的個(gè)數(shù)自動(dòng)賦予的
argv :參數(shù)是字符串指針數(shù)組,其各元素值為命令行中各字符串(參數(shù)均按字符串處理)的首地址。 指針數(shù)組
的長(zhǎng)度即為參數(shù)個(gè)數(shù)。數(shù)組元素初值由系統(tǒng)自動(dòng)賦予
擴(kuò)展知識(shí)
使用步驟
代碼如下(示例):
運(yùn)行結(jié)果如下
推薦學(xué)習(xí):Linux視頻教程