Re: [討論] 有關main
看板C_and_CPP (C/C++)作者khoguan (Khoguan Phuann)時間19年前 (2005/08/24 23:38)推噓2(2推 0噓 1→)留言3則, 2人參與討論串2/3 (看更多)
※ 引述《freaky (jon)》之銘言:
: ※ 引述《khoguan (Khoguan Phuann)》之銘言:
: : void main() { } 是早年 DOS 時代 MS 的編譯器就搞出來
: : 不符標準的東西。因為多數人,包括英文、中文編程書籍的
: : 作者,都在 MS 的淫威下討生活,所以就一直持續出現這種
: : 寫法。
: 請問這是那裡來的說法?
: ISO C Standard 並未禁止 main() 的傳回值宣告成 int 以外的值,
: 只有 ISO C++ Standard 有這項規定; 而大部份的 compiler
: 都是 C/C++ 通吃, 因此有些實作允許 void main() 的寫法.
: 允許這種做法的也不只 MSVC, 還有 IBM VisualAge C/C++,
: Watcom C/C++ 等.
請先參考 C FAQ 這兩則:
http://www.eskimo.com/~scs/C-faq/q11.12.html
http://www.eskimo.com/~scs/C-faq/q11.14.html
我說它不符標準的意思是說,只有將 main() 的傳回值宣告成 int
才是 blessed by the standard and guaranteed to be portable
for any conforming C (or C++) implementation.
至於 void main() 的始作俑者,我是在 comp.lang.c* 上看到
人家說是 MS 搞出來的。請讓我再找一下有無更權威的證據。
BTW, 你所舉的實作也都是限於 MS 平台的。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
※ 編輯: khoguan 來自: 220.130.208.168 (08/25 00:02)
推
59.113.86.189 08/25, , 1F
59.113.86.189 08/25, 1F
→
59.113.86.189 08/25, , 2F
59.113.86.189 08/25, 2F
推
220.130.208.168 08/25, , 3F
220.130.208.168 08/25, 3F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章