【1】main函數

【2】main()
經典的C風格函數頭,如下:
main()
在C語言中,省略返回類型相當於說函數的類型為int。
但是,需要明確,C++逐步淘汰了這種用法。
另外,在C語言中,讓括號空着意味着對是否接受參數保持沉默。
【3】int main() 和 int main(void)
在C++中,讓括號空着與在括號中使用void等效。
在括號中使用關鍵字void明確指出,函數不接受任何參數。
【4】void main()
有些程序員使用void main()這樣的函數頭,並省略返回語句。
邏輯上是一致的,因為void返回類型意味着不返回任何值。
但由於它不是當前標准強制的一個選項,因此有些系統上不能工作。
因此,讀者應該避免使用這種格式,而應使用C++標准格式,相比而言,也沒有增加太多的工作。
【5】int main()特殊讓步
ANSI/ISO C++標准對那些抱怨必須在main()函數最后包含一條返回語句過於繁瑣的人做出來讓步。
如果編譯器到達main()函數末尾沒有遇到返回語句,則認為main()函數以如下語句結尾:
return 0;
這條隱含的返回語句只適用於main()函數,而不適用於其他函數。
VS2017 示例程序如下:
1 // Test1:不加return
2
3 #include <iostream>
4 using namespace std; 5
6 int main() 7 { 8 cout << "main return without value" << endl; 9 } 10
11 // Test2:加return
12
13 #include <iostream>
14 using namespace std; 15
16 int main() 17 { 18 cout << "main return with value" << endl; 19 return 0; 20 }
Good Good Study, Day Day Up.
順序 選擇 循環 總結
