3 回答

TA貢獻883條經(jīng)驗 獲得超454個贊
你課本中寫的是對的!
C 標準規(guī)定,函數(shù)如果不需要參數(shù),參數(shù)列表中應該寫上 void。?參數(shù)列表留空并不表示函數(shù)無參數(shù),而是表示函數(shù)的參數(shù)個數(shù)未指定,并且編譯器不會對調(diào)用參數(shù)進行類型檢查,這是有隱患的!
事實上參數(shù)留空這種寫法只應存在于 C89 之前的很老的 C 代碼中。 ?雖然這么寫不算不合語法,但其是不符合程序員意圖且易出錯的寫法,應該避免。
至于 main 函數(shù),C 標準規(guī)定 main 函數(shù)原型應該是以下形式:
不需要使用參數(shù)時 ?int?main?(void)
需要使用參數(shù)時 ?int?main?(int?argc,?char?*argv[]) 或?int?main?(int?argc,?char?**argv) ? *這兩種寫法是等價的*
其實就是說不需要參數(shù)時,main函數(shù)的參數(shù)列表里也要寫 void。
吐槽:不知道你的同學是從哪里道聽途說的...
其實讓我很驚訝的是,你的課本中對此的描述非常正確,這很贊! ?事實上我見過太多的國內(nèi)教材都寫得一塌糊涂...
也許這說明你校的教學水平不錯,要好好學??!

TA貢獻32條經(jīng)驗 獲得超39個贊
主函數(shù)一般是沒有參數(shù)的,但是你要了解其實主函數(shù)是可以有參數(shù)的,如這種:
int main(int argc,char* argv[]){}
但是不常用你不必太過糾結這件事,因為主函數(shù)是系統(tǒng)調(diào)用的,你只要清楚主函數(shù)是一個程序的入口函數(shù)就可以了
- 3 回答
- 1 關注
- 1732 瀏覽
添加回答
舉報