C/C++編程筆記:「 int main()」和「 int main(void)」的區別?


考慮 main()的如下兩個定義:編程

int  main()微信

{函數

   /*  */學習

   return  0;3d

}視頻

blog

int  main(void)教程

{get

   /*  */源碼

   return  0;

}

有什麼不一樣?

在C ++中,沒有區別,二者相同。

兩種定義均可以在C中使用,可是從技術上講,使用void的第二種定義在技術上被認爲是更好的,由於它明確指出main只能在沒有任何參數的狀況下調用。

在C語言中,若是函數簽名未指定任何參數,則意味着能夠使用任何數量的參數或不使用任何參數來調用該函數。例如,嘗試編譯並運行如下兩個C程序(請記住將文件另存爲.c)。注意fun()的兩個簽名之間的區別。

以上程序編譯和運行正常,但下面的程序在編譯失敗

與C不一樣,在C ++中,上述兩個程序均沒法編譯。在C ++中,fun()和fun(void)都是相同的。

所以區別在於,在C語言中,能夠使用任意數量的參數來調用int main(),可是隻能在不使用任何參數的狀況下調用int main(void)。儘管大多數狀況下並無什麼區別,可是在C語言中建議使用「 int main(void)」。

練習:(預測如下C程序的輸出)

問題①

問題②

小夥伴們看懂了嘛?但願對大家有幫助哦!

另外若是你想更好的提高你的編程能力,學好C語言C++編程!彎道超車,快人一步!

C語言C++編程學習交流圈子,QQ羣1030652847點擊進入】微信公衆號:C語言編程學習基地

分享(源碼、項目實戰視頻、項目筆記,基礎入門教程)

歡迎轉行和學習編程的夥伴,利用更多的資料學習成長比本身琢磨更快哦!

編程學習書籍分享:

編程學習視頻分享:

相關文章
相關標籤/搜索