對不起有人可能是一個愚蠢的問題:C varargs是否使用了一個名爲'end'的關鍵字?
我有很多使用C風格變量參數的代碼。代碼在可變長度函數調用的最後傳入一個變量,名稱爲end。而且......代碼也有一個叫做的枚舉器,結尾爲。到目前爲止,他們並沒有發生衝突(編譯器錯誤說它有一個模糊的定義:它不會告訴我神祕的第二個'end'是在哪裏定義的),直到我改變爲vc 10.0編譯器(VS 2010)。
So is end某種保留關鍵字特別用於變量參數? 我對他們知之甚少。但是我已經查看了大量關於可變參數的文檔,並且在這裏搜索,並且沒有發現任何東西(這可能是件好事)。所以我想,答案是結束是不是一個特殊的詞用於可變參數。我可以讓某人確認嗎?
感謝
'execl',當然。無論如何,這帶來了另一個問題 - execl只能以這種方式工作,因爲它的參數[包括NULL]的_all_是相同的類型:'char *'。這個問題的「結束」只有在與他的函數期望的其他參數類型相同時才能起作用。 – Random832 2011-04-21 17:05:09
而不是:我的代碼中的'結束'只是在用戶定義的長枚舉列表的末尾。所以它不是任何附近的char *。 – 2011-04-21 17:06:39
RRandom832:哎呀,是的 - 謝謝。糾正。 – 2011-04-21 17:06:49