考慮 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語言編程學習基地
分享(源碼、項目實戰視頻、項目筆記,基礎入門教程)
歡迎轉行和學習編程的夥伴,利用更多的資料學習成長比本身琢磨更快哦!
編程學習書籍分享:
編程學習視頻分享: