2015-09-27 101 views
-2

我試圖在不同的程序(Q2-3和Q4)中調用主函數,但在編譯期間出現錯誤。在我的主要我有 prog1(); [它說「以前的隱式聲明prog1在這裏」] 然後在最後有一個相同名稱的函數 void prog1() {[它說「與prog1的衝突類型」],是的,它只是說它在唯一的一條線上{C函數調用奇怪的錯誤

[]正是我在這裏輸入的內容,而不是我的代碼中的內容。如果您需要我的代碼的更多部分,請告訴我。我的程序用C編寫而不是C++

+2

顯示代碼將更具描述性。 –

回答

1

因爲您沒有給出prog1()的原型。

如果有例如下面的簽名

char *prog1(void); 

,你不給的原型,但是從main()調用它,那麼你以後隨着提到簽名,隱式聲明的原型是int prog1()定義它與定義衝突。

只需在main()之前添加原型。