2011-08-13 26 views
0

こんにちは私はC++を書いていて、学習しています。私はこのエラーを取得する:すべてのヘルプは高く評価されC++プログラムレポートのシンボルが見つかりませんでした

#include<iostream> 
#include<stdlib.h> 
#include<time.h> 
#include<cmath> 

using namespace std; 

int rands(int n); 
int hits[10]; 

int main() { 
    int n; 
    int i; 
    int r; 
    srand(time(NULL)); 

    cout<<"enter a number of trials to run"<<endl; 
    cin>>n; 

    for (i=1; i<=n; i++) { 
     r=rands(10); 
     hits[r]++; 
    } 

    for (i=0; i<10; i++) { 
     cout<<i<<":"<<hits[i]<<"<Accuracy"; 
     cout<<static_cast<double>(hits[i])/(n/10)<<endl; 
    } 

    return 0; 
} 

int randns(int n) { 
    return rand()%n; 
} 

"rands(int)", referenced from: 
     _main in ccgc4zY9.o 
ld: symbol(s) not found 
collect2: ld returned 1 exit status 

私のコードはこれです!

+0

あなたの関数名のスペルを確認してください;) – Hyperbole

+0

それはそれが言うことを意味します。シンボル 'rands'を定義するファイルをリンクしていません。あなたは 'ランデンス'を意味しましたか? – geoffspear

+0

コードが正しくインデントされていれば、コードを読みやすくなり、行番号がなくても簡単にコピー&ペーストできます。 (エラーメッセージが行番号を参照している場合は、 '// This is line 42'のコメントを追加してください)。 –

答えて

7

randns()という関数を定義しましたが、rands()という関数を呼び出しました。リンカーはrands()が未定義であると言っていますが、これは正しいと思われます。

関連する問題