主函數(shù)main()是一個(gè)c語言程序開始運(yùn)行的標(biāo)志,也就是說,一程序開始執(zhí)行都是從主函數(shù)開始的,不管主函數(shù)的位置在哪里。
思茅網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站設(shè)計(jì)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。成都創(chuàng)新互聯(lián)公司從2013年成立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。
入口就是你程序開始執(zhí)行的地方,就好像你去上學(xué),而學(xué)校只有一個(gè)門,那么你如果想到學(xué)校做事情,就必須先通過學(xué)校的門,才能做你要做的事情。
在main函數(shù)里面,就任何類型都可以輸入輸出了,int main只是返回給系統(tǒng)的一個(gè)int型變量。就跟其他函數(shù)也有返回值一樣。
解釋如下:
1、int main()是C語言main函數(shù)的一種聲明方式;
2、int表示函數(shù)的返回值類型,表示該主函數(shù)的返回值是一個(gè)int類型的值;
3、main表示主函數(shù),是C語言約定的程序執(zhí)行入口,其標(biāo)準(zhǔn)的定義格式為int main(int argc, char *argv[]);在int main()中,()中沒有數(shù)值表示入?yún)榭?,等同于int main(void);
4、事例中printf("%f",a);表示將a的值作為浮點(diǎn)類型打印出來,在屏幕上顯示,而主函數(shù)的返回類型int會(huì)將返回的值回傳給主調(diào)進(jìn)程,而不是在屏幕輸出。
5、因此,printf的輸出類型跟主函數(shù)的返回類型沒有關(guān)系,互不關(guān)聯(lián)。事例中,return 0 對(duì)應(yīng)才是主函數(shù)的返回值類型。
拓展資料
在C語言當(dāng)中,一個(gè)程序,無論復(fù)雜或簡單,總體上都是一個(gè)“函數(shù)”;這個(gè)函數(shù)就稱為“main() 函數(shù)”,也就是“主函數(shù)”。比如有個(gè)“做菜”程序,那么“ 做菜 ”這個(gè)過程就是“主函數(shù)”。在主函數(shù)中,根據(jù)情況,你可能還需要調(diào)用“買菜,切菜,炒菜”等子函數(shù)。
main函數(shù)在程序中大多數(shù)是必須存在的,但是依然有例外情況,比如windows編程中可以編寫一個(gè)動(dòng)態(tài)鏈接庫(dll)模塊,這是其他windows程序可以使用的代碼。由于DLL模塊不是獨(dú)立的程序,因此不需要main函數(shù)。再比如,用于專業(yè)環(huán)境的程序-----如機(jī)器人中的控制芯片--可能不需要main函數(shù)。
參考資料:百度百科:main函數(shù)
main(int a, char b){}
參數(shù) 就是a(一個(gè)整數(shù)),b(一個(gè)字符,通常我們使用 字符串既字符數(shù)組 比較多)
當(dāng)你程序編譯后,在c:\提示符需要這樣執(zhí)行你的程序(假設(shè)程序名是run.exe):
run.exe 5 c
這里的:
1- .exe 可以省略;
2- 5 可以是任意的整數(shù),當(dāng)然在int類型的允許范圍之內(nèi);
3- c 可以是任何的 26 * 2 個(gè)大小寫英文字母,以及任何標(biāo)點(diǎn)符號(hào)等字符;
當(dāng)然參數(shù)可以是任意指定的數(shù)據(jù)類型,
你可以想象當(dāng)你調(diào)用 DOS 命令 DIR 時(shí):
你想顯示 c盤根目錄下的所有文件/文件夾
你需要鍵入 dir c:\*.*
dir本身就是一種程序,它的參數(shù)在這里就是 c:\*.* 字符串。
回答者:ourcolour - 經(jīng)理 五級(jí) 2-27 02:54
main函數(shù),一般初級(jí)編程不用到參數(shù),
例如main(){};
可是牽扯到遞歸調(diào)用和函數(shù)返回值的時(shí)候就要用到了主函數(shù)的參數(shù)了,用來記錄函數(shù)返回值的。
對(duì)main()函數(shù)始終作為主調(diào)函數(shù)處理,也就是說,允許main()調(diào)用其它函數(shù)并傳遞參數(shù)。事實(shí)上,main()函數(shù)既可以是無參函數(shù),也可以是有參的函數(shù)。對(duì)于有參的形式來說,就需要向其傳遞參數(shù)。但是其它任何函數(shù)均不能調(diào)用main()函數(shù)。當(dāng)然也同樣無法向main()函數(shù)傳遞,只能由程序之外傳遞而來。
main()函數(shù)的帶參的形式:
main(argc,argv)
int argc,char *argv[];
{
};
從函數(shù)參數(shù)的形式上看,包含一個(gè)整型和一個(gè)指針數(shù)組。當(dāng)一個(gè)C的源程序經(jīng)過編譯、鏈接后,會(huì)生成擴(kuò)展名為.EXE的可執(zhí)行文件,這是可以在操作系統(tǒng)下直接運(yùn)行的文件,換句話說,就是由系統(tǒng)來啟動(dòng)運(yùn)行的。對(duì)main()函數(shù)既然不能由其它函數(shù)調(diào)用和傳遞參數(shù),就只能由系統(tǒng)在啟動(dòng)運(yùn)行時(shí)傳遞參數(shù)了。
在操作系統(tǒng)環(huán)境下,一條完整的運(yùn)行命令應(yīng)包括兩部分:命令與相應(yīng)的參數(shù)。
格式為:
命令參數(shù)1參數(shù)2....參數(shù)n
此格式也稱為命令行。命令行中的命令就是可執(zhí)行文件的文件名,其后所跟參數(shù)需用空格分隔,并為對(duì)命令的進(jìn)一步補(bǔ)充,也即是傳遞給main()函數(shù)的參數(shù)。
命令行與main()函數(shù)的參數(shù)存在如下的關(guān)系:
設(shè)命令行為:program str1 str2 str3 str4 str5
其中program為文件名,也就是一個(gè)由program.c經(jīng)編譯、鏈接后生成的可執(zhí)行文件program.exe,其后各跟5個(gè)參數(shù)。對(duì)main()函數(shù)來說,它的參數(shù)argc記錄了命令行中命令與參數(shù)的個(gè)數(shù),共6個(gè),指針數(shù)組的大小由參數(shù)argc的值決定,即為char*argv[6]。
數(shù)組的各指針分別指向一個(gè)字符串。應(yīng)當(dāng)引起注意的是接收到的指針數(shù)組的各指針是從命令行的開始接收的,首先接收到的是命令,其后才是參數(shù)。
明白不,還不懂,看看譚浩強(qiáng)的那本經(jīng)典的c語言吧。
main()程序的入口
C語言中的主函數(shù)固定名為:main(),每個(gè)系統(tǒng)中必須有一個(gè),且只能有一個(gè)。它 是第一個(gè)運(yùn)行的函數(shù)。
一般情況下,main()寫在文件的最后面,其他被調(diào)用的函數(shù)放在前面,這樣定義函數(shù)之前可以不加聲明,如果放在主函數(shù)之后,則必須先聲明,再定義,再被調(diào)用。
main()程序的入口
C語言中的主函數(shù)固定名為:main(),每個(gè)系統(tǒng)中必須有一個(gè),且只能有一個(gè)。它 是第一個(gè)運(yùn)行的函數(shù)。
一般情況下,main()寫在文件的最后面,其他被調(diào)用的函數(shù)放在前面,這樣定義函數(shù)之前可以不加聲明,如果放在主函數(shù)之后,則必須先聲明,再定義,再被調(diào)用。