2014-03-26 74 views
1

在我的C++類中,我們已經給出了一個任務,用於創建一個拋硬幣程序,該程序在一個函數中具有隨機數生成器,並將其調用到運行它的另一個函數中十二(12)次。C++調用函數在另一個函數內

int cointToss() 
{ 
return rand()%2; 
} 

int run12() 
{ 
int face, heads=0; 
for (int i=0; i<12; i++) 
{ 
    face=coinToss(); 

    if(face==1) 
    { 
     heads=heads+1; 
    } 
} 
return heads; 
} 

每當我嘗試運行它,但是我不斷收到這個錯誤, 「1> source.obj:錯誤LNK2001:無法解析的外部符號 」INT __cdecl coinToss(無效)「(coinToss @@ YAHXZ?)」

我似乎無法找到資源,說如何正確調用第二個函數中的第一個函數。

回答

3

嗯,這很尷尬。

你犯了一個錯字。該函數被稱爲「cointToss」,但你稱之爲「coinToss」(請參閱​​額外的t?)。

C爲你隱式添加了一個函數聲明。打開警告,你會看到。

修復你的錯字,世界將再次圍繞。

+0

沒有開玩笑的尷尬...感謝一百萬。 – user3427139

0

您的方法被聲明爲cointToss,但是您使用的是coinToss

+0

我在想方法的拼寫看起來很奇怪,但我找不到爲什麼...... – PlasmaPower