C/C++編程筆記:新手易錯(cuò)集錦之main函數(shù)錯(cuò)誤,編程小白必備!
新手易錯(cuò)集錦

LINK : fatal error LNK1561
?必須定義入口點(diǎn)
main函數(shù)容易寫成mian函數(shù)。在C語言中缺少主函數(shù)的時(shí)候都會(huì)報(bào)以上錯(cuò)誤哦!相信很多剛開始學(xué)習(xí)C語言的小伙伴都會(huì)出現(xiàn)這樣的問題吧!vs中的錯(cuò)誤提示如下:

main函數(shù)小知識(shí)
從開始學(xué)習(xí)C語言,大家似乎看到了很多版本的main函數(shù),那么哪一種才是正確的呢?我們先來看看目前有哪些版本。
1、雙無系列
沒有返回值,沒有入?yún)?/p>
main()
在C89標(biāo)準(zhǔn)中,這種寫法是可以接受的,但使用現(xiàn)在的編譯器編譯時(shí),會(huì)報(bào)告警,并且會(huì)將其返回值默認(rèn)為int。實(shí)際上,如果函數(shù)沒有顯式聲明返回類型,那么編譯器會(huì)將返回值默認(rèn)為int。
2、雙空系列
參數(shù)為void,返回值為void
void main(void){}
這種形式的來源不得而知。但是為何這么多初學(xué)者使用?main函數(shù)的返回值最終會(huì)作為程序的退出狀態(tài),而一旦聲明為void,在程序退出后,想要獲取其退出狀態(tài)也就不可以了。因此不建議其返回值為void。

3、有返回值系列
主函數(shù)帶int類型的返回值
這是常見的一種寫法。無形參,表明它在調(diào)用的時(shí)候不能傳入任何參數(shù),那么它也就不能獲取命令行參數(shù)了。這是小編教學(xué)時(shí)習(xí)慣用的一種寫法
4、有返回值有參系列
主函數(shù)帶int類型的返回值,主函數(shù)帶有兩個(gè)參數(shù)
int main(int argc,char *argv[])
這也是最常見的一種寫法。第一個(gè)入?yún)槊钚袇?shù)個(gè)數(shù),第二個(gè)入?yún)槊钚袇?shù)數(shù)組。通常用于實(shí)現(xiàn)需要從命令行獲取參數(shù)的功能。小編在講文件操作的時(shí)候通過命令行參數(shù)簡單實(shí)現(xiàn)過windows系統(tǒng)中的copy指令不清楚的可以去看看視頻教程。
到底使用哪種呢?
C89/C99/C11標(biāo)準(zhǔn)文檔中只提供了兩種main函數(shù)的寫法:

至此,我們已經(jīng)知道了c語言main函數(shù)的寫法,我們來總結(jié)一下前面的內(nèi)容:
C標(biāo)準(zhǔn)只提供了兩種main的形式。
為了可移植性,建議采用標(biāo)準(zhǔn)形式。
聲明返回值時(shí),默認(rèn)為int。
另外如果你想更好的提升你的編程能力,學(xué)好C語言C++編程!彎道超車,快人一步!
分享(源碼、項(xiàng)目實(shí)戰(zhàn)視頻、項(xiàng)目筆記,基礎(chǔ)入門教程)
歡迎轉(zhuǎn)行和學(xué)習(xí)編程的伙伴,利用更多的資料學(xué)習(xí)成長比自己琢磨更快哦!

學(xué)習(xí)C/C++編程知識(shí),提升C/C++編程能力,歡迎關(guān)注UP一起來成長!
另外,UP在主頁上傳了一些學(xué)習(xí)C/C++編程的視頻教程,有興趣或者正在學(xué)習(xí)的小伙伴一定要去看一看哦!會(huì)對(duì)你有幫助的~