2017-03-21 9 views
0

人と骨格の数を宣言する関数を使って書いた1Dバトルプログラムを実行しようとしています。しかし、関数getHumansとgetSkeletonsの識別子がなくなっているというエラーが表示されてしまいます。関数の識別子が見つかりません

int getHumans() { 
int numHumans; 
    cout << "Input the number of soldiers in the human army: "; 
    cin >> numHumans; 
    cout << "\nThe human army is " << numHumans << " men strong!"; 
    return numHumans; } 


int getSkeletons() { 
int numSkeletons; 
    cout << "Input the number of skeletons in the skeleton army: "; 
    cin >> numSkeletons; 
    cout << "\nThe skeleton army is " << numSkeletons << " skeletons strong!"; 
    return numSkeletons; } 

私はメイン()int型の外側の機能ここで

numHumans = getHumans(); 
startHumans = numHumans; 
cout << "\n Rolling for attack chance... \n" << "Each human has " << (humanAttack * 100) << "% chance to hit an opponent!\n"; 


numSkeletons = getSkeletons(); 
startSkeletons = numSkeletons; 
cout << "\n Rolling for attack chance.. \n" << "Each skeleton has " << (skeletonAttack * 100) << "% chance to hit an opponent!\n"; 

されています。ここでは

は、Visual Studioがint main()の内部に不足している識別子として指摘されているライン問題が何であるか分からない、誰かが私に手を貸すことができるか(私はベビー・ステップの初心者です。

+4

のようにそれらを宣言するには、[MCVE]コンパイラから実際のエラーでを投稿してください。 – NathanOliver

+0

ちょっと推測しますが、 'getHumans()'と 'getSkeletons()'がmain()の後に定義されている場合、コンパイラはメインに達するとその存在を知りません。したがって、mainの前に宣言する必要があります。 mainの前に 'int getHumans();'と 'int getSkeletons();を書くだけです。定義(ソースコード付きのもの)は、 'main'の後に置くことができます。 –

答えて

0

あなたが投稿した内容からは分かりませんが、とgetSkeletonsの機能がmain機能の下に宣言されていると思います。あなたのコンパイラは上から下に読んでいるので、あなたがそれらを呼び出すときにそれらの関数が何であるかを伝えていなければ、それらがまだ存在するかどうかは分かりません。どちらかそれを修正する主な上記の機能をコピーして貼り付ける、または前方そう

int getSkeletons(); 
    int getHumans(); 

    int main(){ 
     ... 
    } 
+0

はい!それだった、ありがとう。 –

関連する問題