void表示參數(shù)為空,即這個函數(shù)不含參數(shù),比如定義一個print函數(shù)。
我們提供的服務(wù)有:成都做網(wǎng)站、成都網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、沭陽ssl等。為1000+企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的沭陽網(wǎng)站制作公司
程序執(zhí)行總是從main函數(shù)開始,如果有有其他函數(shù),則完成對其他函數(shù)的調(diào)用后再返回到主函數(shù),最后由main函數(shù)結(jié)束整個程序。在執(zhí)行程序時,由系統(tǒng)調(diào)用main函數(shù)。main 函數(shù)是在程序啟動中完成對具有靜態(tài)存儲期的非局部對象的初始化之后被調(diào)用的。它是程序在有宿主 (hosted)環(huán)境(亦即有操作系統(tǒng))中所指定的入口點。自立程序(啟動加載器,操作系統(tǒng)內(nèi)核,等等)的入口點則是由實現(xiàn)定義的。
擴(kuò)展資料:
主函數(shù)的兩個形參形式中的形參,允許從執(zhí)行環(huán)境中傳遞任意的多字節(jié)字符串(它們通常被稱為命令行參數(shù)),各個指針 argv.. argv[argc-1] 指向每個這些字符串的第一個字符。argv[0] 是指向一個表示用于執(zhí)行該程序自身的名字的空結(jié)尾多字節(jié)字符串(或者當(dāng)執(zhí)行環(huán)境不支持時,為空字符串 "")的開頭字符的指針。
這些字符串是可以改動的,雖然對它們的改動并不會被傳回給執(zhí)行環(huán)境:比如可以用 std::strtok 來使用它們。由 argv 所指向的數(shù)組的大小至少為 argc+1,其最后一個元素 argv[argc] 保證為一個空指針。
在調(diào)用可執(zhí)行程序時,可以通過main函數(shù)的參數(shù)將命令行的調(diào)用參數(shù)傳遞給main函數(shù)。
一個c程序有且僅有一個main函數(shù),任何一個c程序總是從main函數(shù)開始執(zhí)行,main函數(shù)后面的一對圓括號不能省略。
具體形式如下:
main(){ ? }
被大括號{ }括起來的內(nèi)容稱為main函數(shù)的函數(shù)體,這部分內(nèi)容就是計算機(jī)要執(zhí)行的內(nèi)容。
在{ ?}里面每一句話后面都有一個分號(;),在c語言中,我們把以一個分號結(jié)尾的一句話叫做一個c語言的語句,分號是語句結(jié)束的標(biāo)志。
擴(kuò)展資料:
程序執(zhí)行總是從main函數(shù)開始,如果有有其他函數(shù),則完成對其他函數(shù)的調(diào)用后再返回到主函數(shù),最后由main函數(shù)結(jié)束整個程序。在執(zhí)行程序時,由系統(tǒng)調(diào)用main函數(shù)。
main 函數(shù)是在程序啟動中完成對具有靜態(tài)存儲期的非局部對象的初始化之后被調(diào)用的。它是程序在有宿主 (hosted)環(huán)境(亦即有操作系統(tǒng))中所指定的入口點。自立程序(啟動加載器,操作系統(tǒng)內(nèi)核,等等)的入口點則是由實現(xiàn)定義的。
參考資料來源:百度百科-C語言函數(shù)
1.main函數(shù)是程序的入口函數(shù),每次程序執(zhí)行都是從main,很多地方main函數(shù)都會帶有參數(shù):main (int argc,char *argv[])
2.簡單的來說mian函數(shù)就是帶有兩個參數(shù),第一個參數(shù)是一個整型變量,第二個參數(shù)是一個指向字符串的指針數(shù)組。
3.這里的參數(shù)由操作系統(tǒng)來調(diào)用,并給它們賦值。
4.現(xiàn)在的操作系統(tǒng)都是圖形化的,參數(shù)的調(diào)用基本都隱藏起來,不過可以借助DOS來理解:
在DOS操作系統(tǒng)中輸入這樣的命令:C:可執(zhí)行文件名 參數(shù)參數(shù)……;
5.操作系統(tǒng)調(diào)用C語言的程序也是這樣調(diào)用的。第一個參數(shù)argc代表命令中參數(shù)的個數(shù),文件名也算上。argv就是存儲這些參數(shù)的。
在調(diào)用可執(zhí)行程序時,可以通過main函數(shù)的參數(shù)將命令行的調(diào)用參數(shù)傳遞給main函數(shù)。
事實上,main()函數(shù)既可以是無參函數(shù),也可以是有參的函數(shù)。對于有參的形式來說,就需要向其傳遞參數(shù)。
從函數(shù)參數(shù)的形式上看,包含一個整型和一個指向字符指針的指針。當(dāng)一個C的源程序經(jīng)過編譯、鏈接后,會生成擴(kuò)展名為.EXE的可執(zhí)行文件(對windows操作系統(tǒng)而言),這是可以在操作系統(tǒng)下直接運行的文件,換句話說,就是由系統(tǒng)來啟動運行的。由系統(tǒng)在啟動運行時傳遞參數(shù)。
在操作系統(tǒng)環(huán)境下,一條完整的運行命令應(yīng)包括兩部分:命令與相應(yīng)的參數(shù)。其格式為:
命令參數(shù)1參數(shù)2....參數(shù)nt;
此格式也稱為命令行。命令行中的命令就是可執(zhí)行文件的文件名,其后所跟參數(shù)需用空格分隔,并為對命令的進(jìn)一步補(bǔ)充,也即是傳遞給main()函數(shù)的參數(shù)。
命令行與main()函數(shù)的參數(shù)存在如下的關(guān)系:
設(shè)命令行為:program str1 str2 str3 str4 str5
擴(kuò)展資料:
main 函數(shù)的返回值類型必須是 int ,這樣返回值才能傳遞給程序的激活者(如操作系統(tǒng))。
如果 main 函數(shù)的最后沒有寫 return 語句的話,C99 規(guī)定編譯器要自動在生成的目標(biāo)文件中(如 exe 文件)加入return 0; ,表示程序正常退出。不過,我還是建議你最好在main函數(shù)的最后加上return 語句,雖然沒有這個必要,但這是一個好的習(xí)慣。
也就是說在最新的C語言標(biāo)準(zhǔn)中強(qiáng)制要求main函數(shù)的返回值類型為int,main函數(shù)的返回值是傳遞給操作系統(tǒng),讓操作系統(tǒng)判斷程序的執(zhí)行情況(是正常結(jié)束還是出現(xiàn)異常)。
參考資料來源:百度百科-main函數(shù)
C語言的帶參數(shù)的a href=";tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YduWDzmyw9rHfzPyP-mWmd0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPW6snH64n1m1n16zPjc1P1Tz"target="_blank" class="baidu-highlight"main函數(shù)/a格式為main(int argc,char* argv[]),其中argc為參數(shù)個數(shù)加1,argv為參數(shù)列表,從argv[1]開始。編譯后生成可執(zhí)行文件,可以在執(zhí)行的程序后加參數(shù),比如編譯一個程序為test.exe,則在執(zhí)行時可以輸入:
test.exe 1 firestone
在這里,argc等于3,argv[0]為"test.exe",argv[1]為"1",argv[2]為"firestone"。
如果有下面的程序:
#include a href=";tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YduWDzmyw9rHfzPyP-mWmd0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPW6snH64n1m1n16zPjc1P1Tz" target="_blank" class="baidu-highlight"stdio.h/a
void main(int argc,char *argv[])
{
printf("You've input %d parameters.\n",argc-1);
for(int i=1;iargc;i++)printf("The No.%d is:%s\n",i,argv[i]);
}
則上面的輸入會產(chǎn)生如下運行結(jié)果:
You've input 2 parameters.
The a href=";tn=44039180_cprfenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YduWDzmyw9rHfzPyP-mWmd0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPW6snH64n1m1n16zPjc1P1Tz" target="_blank" class="baidu-highlight"No.1/a is 1
The No.2 is firestone
int main (int argc,char *argv[]) 或者 int main (int argc,char **argv)
其中第一個表示參數(shù)的個數(shù);第二個參數(shù)中argv[0]為自身運行目錄路徑和程序名,argv[1]指向第一個參數(shù)、argv[2]指向第二個參數(shù)……
測試?yán)樱?/p>
#include stdio.h#include string.h
int main(int argc,char *argv[])
{
printf("argc= %d\n",argc);
while(argc--)
{
printf("%s \n",*argv++);
}
return 0;
}
網(wǎng)站名稱:c語言中主函數(shù)后面的參數(shù) c++主函數(shù)參數(shù)
當(dāng)前鏈接:http://vcdvsql.cn/article32/dosdipc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、全網(wǎng)營銷推廣、網(wǎng)站排名、網(wǎng)站維護(hù)、微信小程序、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)