Re: [FAQ集] 函式宣告 int f(void); 和 int f(); ꐠ…
看板C_and_CPP (C/C++)作者khoguan (Khoguan Phuann)時間19年前 (2005/09/02 21:41)推噓2(2推 0噓 0→)留言2則, 2人參與討論串2/2 (看更多)
※ 引述《khoguan (Khoguan Phuann)》之銘言:
: Q: 函式宣告 int f(void); 和 int f(); 一樣嗎?
:
: A: 對 C++ 來說,兩者一樣表示 f 函式不需要而且不能有參數。但對 C 來說,
: 只有前者才表示不能有參數,後者則是表示參數個數及型別並未指定,編
: 譯器不幫我們在呼叫時做這種檢查。參考上一則。
: 推 jeunder:建議可以補充, 加上 int f(...); 的例子 61.64.150.109 09/02
嗯,這種宣告方式,一般都是要先有一個或多個具體的參數型別,
最後再加上這個 ellipsis( , ...) 才有辦法用 stdarg.h 中的
macro 來存取。就像 printf(const char *, ...); 等 I/O系列
那樣。一般是不會只宣告成 int f(...); 這樣的。所以就和這則
FAQ 的 f(void) 和 f() 長的樣子差得比較遠一點。
不過,得確值得另立一則 FAQ 討論一下如何定義 function with
variable number of arguments :-)
-=-=-=-=-=-=-=-=-=
對了,能不能拜託 jeunder大大 來整理或新寫一到數則有關
取亂數的 FAQ 呢? ^_^
我完全不懂數學,沒辦法 :(
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.130.208.167
推
61.64.150.109 09/02, , 1F
61.64.150.109 09/02, 1F
推
220.130.208.167 09/02, , 2F
220.130.208.167 09/02, 2F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章