1樓:匿名使用者
預設main等於int main,最後要加上返回值return 0。void main最後不需要返回值
2樓:匿名使用者
毫無疑問,編譯好c程式並生成exe檔案後,總要執行。這裡有個概念先解釋一下:
概念1:執行一個編譯好的exe,其實就是讓作業系統(例如windows系統,或linux系統等)來呼叫這個exe檔案中的main函式。
概念2:main函式也是函式,只不過,main函式的是由作業系統呼叫的。作業系統呼叫main函式時,可以向main函式傳遞引數;main函式返回時,也可以向呼叫者(也就是作業系統)返回一個值
明白了上述兩點,就可以解釋你的問題了:
1)main( ) 這個是 int main(void)的簡寫:意思是執行exe(作業系統呼叫main)時不需要傳入引數;main執行完後向作業系統返回一個整型值;
2)void main( ) 是 void main(void)的簡寫:意思是執行exe(作業系統呼叫main)時不需要傳入引數;main函式執行完後不需要向作業系統返回值(即返回一個void值);
3)int main(void) 與1)相同
更進一步:
如果你的main函式為:
void main(int argc,char *argv)
{int i;
for( i=1; i
編譯後,假設生成的可執行檔案為my.exe。執行這個檔案
orange
banana
3樓:匿名使用者
函式型別(函式引數)函式型別就是返回值型別了,void是空的意思吧。
4樓:藍晨星
main ()函式使用時,編譯器會自動識別為int型的,也就是說main()和int main(void)其實是一樣的,而void main()則是:沒有返回值,而且不帶引數。括號裡的東西叫做引數,初學者直接不寫就行,等你c語言入門之後就慢慢明白了。
main之前的int 叫做返回值的型別,如果是void,說明沒有返回值。
5樓:相約未來
main( ) 預設為int main,需要返回值
void main( ) 不需要返回值
main(void)主程式不需要接受外部引數
c語言中void main和int main有什麼區別
6樓:徜逸
1、有無返回值
void main沒有返回值,int main有返回值。
2、返回值型別
int main返回int型別的資料,void main不返回。
但是在c語言推薦寫法中,建議使用int main,因為在有的編譯器雖然viod main可以通過編譯,但在其他編譯器就會報錯。為了**擁有更好的可移植性,一般寫int main。
**示例
#include int main(void)
上述的**中為int main,返回了一個0,資料型別為int。
資料型別
void:宣告函式無返回值或無引數,宣告無型別指標,顯示丟棄運算結果。(c89標準新增)
char:字元型型別資料,屬於整型資料的一種。(k&r時期引入)
int:整型資料,表示範圍通常為編譯器指定的記憶體位元組長。(k&r時期引入)
float:單精度浮點型資料,屬於浮點資料的一種。(k&r時期引入)
double:雙精度浮點型資料,屬於浮點資料的一種。(k&r時期引入)
7樓:匿名使用者
void main 和 int main的區別就是有無返回值。
在int main 可以出現非 int 型別的東西。在寫**時,一個函式要麼有返回值,要麼沒有返回值沒有返回值就用void來表示。 main函式同樣的,在沒有返回值時加個void 。
有的編譯器必須main要有返回值 int , 那就寫成int main 。
至於什麼時候需要哪種寫法,不必有這種顧慮,你可以一律都寫成 int main ,然後在方法體中 最後加個return 0 ;就行了。
void main 和 int main 在作用上其實沒什麼區別啊,只是有的嚴謹的編譯器必須要main有int 返回值而已,這兩種寫法跟自定義的函式沒任何關係。
8樓:小莫
void main 和 int main 主要有以下三個方面的區別:
1、void main的返回值為空值(即沒有返回值),int main的返回值為整數型別值。
2、void main 可以用 int main代替,但是 int main 不能用 void main代替。
3、有的編譯器main必須要有返回值 int , 那就寫成int main 。
在使用中可以一律寫成 int main,然後在方法體中最後寫 return 0; 就行了,這樣寫基本上所有的編譯器都可以通過。
9樓:專揀米粒
1、void main沒有返回值,int main有返回值2、void main 可以用 int main代替。
3、有的編譯器main必須要有返回值 int , 那就寫成int main 。
10樓:匿名使用者
返回值型別不同。
標準的c語言要求main函式的返回值為int, 該值是執行程式時,告知主調程序程式執行結果的一個渠道。
可以在命令列執行exe後,通過
echo $?
命令獲取上一個可執行程式的執行結果。
不過由於大多數時候,程式的執行結果可以由其它方式判定,比如程式的列印資訊,所以main的返回值變得不重要,於是大部分編譯器都支援無返回值型別的main,這時預設返回給主調程序0值。
標準的main函式格式為
int main(int argc, char *argv);
即返回值為整型,帶兩個引數,argc為命令列引數的個數,argv為指標陣列,前argc個指標為引數列表,最後一個指標值為null。
11樓:匿名使用者
main函式的返回值是用來表示程式的退出狀態的,return 0表示無錯誤,其他的返回值根據系統不同可能代表不同的型別,如果不返回可能會無法檢測到錯誤。
另外一個原因是:如果返回值是返回到棧上的,則程式未返回值的情況下,程式的呼叫者會從棧上誤pop一個值認為是程式的返回值,這樣的話就會造成下面的操作錯誤,因為多pop了一個值。
12樓:澈力木格
void和int表示的是主函式的返回值,void返回的是空值,int返回的是一個整型數值。
用的是int main,在程式結束時必須寫上return 0(或者任何一個整數);而用的是void main就不需要return返回語句。
13樓:匿名使用者
c語言中用void main()
c++中用int main(),其中
int main()最後必須加return 0;
補充中的不可以,main是主函式,一個程式中只能有一個主函式。void aaa()是一個普通的函式,可以被主函式或者其他普通函式呼叫
14樓:浪哥
void main表示空的主函式,不需要返回值;
但是int main需要返回一個int型的值。
15樓:徐臨祥
那主調函式還.c語言中void main和int main有什麼區別,是不是在int main裡面不能出現非int型別的的東西阿,...
16樓:匿名使用者
在上面這種情況void和int可有可無,對結果不影響,只是為了書寫規範。
可以,其他函式也可以
17樓:紹凱文昕月
在dev-c++中必須寫成int
main,寫成int
main比較規範,返回0則表示程式正常退出。
在c語言中,int main()和int main(void)有什麼區別?
18樓:匿名使用者
一般來將,void 就是空的意思,在這裡可以省略,int main(void) 可以看成 int main() .
main 函式另一個重要的形式 是 : int main(int argc ,char *argv) ,這個形式中 argc 是給main函式引數的個數,argv 中的成員就是相應的引數,
看下面的例子就明白了,在你將這個程式編譯完成後假如生成一個helloworld.out 這樣一個可執行檔案,那麼在執行時 helloworld.out 123 456
那麼123 456 就會作為引數傳給main函式, argc 等於2 argv[1] 就是 123 argv[2] 就是 456,
這樣在你程式中就可以直接引用了這兩引數了。
19樓:
基本上差不多 main(void) 代表無引數 main() 代表不確定引數。
應該說,用void 的更規範吧
20樓:匿名使用者
無大區別,int main()預設就是void
c語言中的int main(void)是什麼意思
21樓:
這是c語言main函式的一種宣告方式,該方式表明這個main函式不帶引數,返回值。
void常用在程式編寫中對定義函式的引數型別、返回值、函式中指標型別進行宣告。
int main(void)還可以寫為 void main()或者 int main()最後在mian()函式結束時,寫return 0即可。
22樓:謇國英香儀
main()和viod
main()都是主函式不不返回任何型別。而intmain()主函式在執行後返回一個整數。一般gcc標準裡c++主函式一定是int
main().一般主函式有返回值在一些編譯器上你會看到最後有一句terminated
with
return
code多少。
23樓:紀季萇泰鴻
想當於int
main()
void可有可無.都表示沒有引數.
這裡的int
指返回型別,就是這個方法要return
一個int
型別的數
main是方法名.但不同於一般的方法名,它是函式入口.就是當執行這個檔案的時候第一個執行的方法.
24樓:匿名使用者
#include
int main(void)
int 是函式的返回值型別,void是main函式的引數為void型別, 最後的返回值最好有return 0;
25樓:
int 表示函式有返回值,那麼你在main函式結束的時候要有return語句,如果沒有就會有warning
void 表示函式沒有引數。
26樓:匿名使用者
main函式返回值為int整型,參數列void為空。
c語言中,void main ,int main(void)和int main 有什麼區別?
27樓:七絃_斂月
void main()是代表主函式不需要返回值int main(void)返回值是int型資料,函式末尾需要ruturn語句。
()中表示函式中傳入的引數,括號為空表示不需要引數()和(void)都表示沒有引數,是一樣的
28樓:匿名使用者
後兩者並沒有區別。
前者不被推薦,因為它不符合標準c的要求。後者要求c語言程式如果正確執行並返回的話,應當返回一個0通知系統說這個程式執行沒問題。
有一些編譯器允許void main()這種定義法,有些則不允許。所以為了可移植性,和程式的可靠性,都應當採用int main()的定義法。
我確實見過計算機等級考試中使用void main()的定義法。考試的時候別管它,你自己寫程式的時候習慣使用int main()並在末尾return 0就ok了。
c語言void函式在main函式中使用的問題
逍遙散士 宣告和呼叫是兩回事,宣告void function void 括號中的void 是告訴編譯器此函式沒有引數,而呼叫時函式名後面的括號裡放時的是引數,你這樣去寫,就相當前面說明了無引數,後面又給它一個引數,程式當然出出錯了,另外呼叫時不寫返回值的型別,因為在宣告時已經寫過了,這可能是編譯器的...
c語言函式return和void的用處和意義分別是什麼
難得當歌對酒時 以下不包括建構函式 但建構函式中可以寫return 以結束其執行 1,函式的返回值型別只要不是 void 就要返回一個相同型別的值,當函式出現在一個表示式中時,這個值就是函式的值,比如說你的e max a,b 中,max若不返回一個值,那e的值就有問題,這樣寫函式應該會有錯誤或者警告...
c語言程式設計,c語言 程式設計
陣列的下標是從0開始的 假如陣列a裡有三個元素,這三個元素可以表示成a 0 a 1 a 2 陣列的大小是根據你定義時確定下來的 有3中定義方法 1 int a 100 2 int a new int 100 3 int a 第一種定義直接給他分配了100個空間的記憶體,第二個也是,第三個是根據後面陣...