c語言主函數后面的括號寫東西嗎
qq_慕桂英2059774
2016-10-13 23:20:08
TA貢獻883條經驗 獲得超454個贊
main函數的參數列表中應該是寫東西的。
更準確地說,C標準規定main函數原型只有以下兩種形式:
int?main(void);??//?#1?不需要參數的版本 int?main(int?argc,?char?*argv[]);??//?#2?接受命令行參數的版本
并且,main函數的返回類型是int,不要寫成void。
所以,main函數的參數列表中永遠要寫東西,不應該留空!
你可能看到很多人在不需要main的參數時,將main的參數列表留空: int main()
這種寫法雖然可以編譯,但是很不規范。
C語言規定:如果函數不需要接受參數,那么參數列表中要寫上void(就像main函數的#1形式那樣)。參數列表留空則表示該函數可以接受任何參數,編譯器將不會對傳參進行類型檢查,這樣的代碼是有安全隱患的。 所以不僅對于main函數,你寫的所有函數,只要不打算接受參數,都應該明確地在參數列表中寫上void。
舉報