私はこれをコンパイルしようと定義され、それが言う「testrand.c :(テキスト+ 0x11を): `rand_number」への未定義参照」私の未定義の参照が
1 #include <stdio.h>
2 #include <time.h>
3
4 int rand_number(int param);
5
6 main()
7 {
8 while(5)
9 {
10 printf("%d", rand_number(15));
11 sleep(1);
12 }
13
14
15 int rand_number(int param)
16 {
17 srand((unsigned int)time(NULL));
18 int x = param;
19 int rn = rand() % x;
20 return rn;
21 }
22 }
をしかし、私は明確に定義されてきましたその上に...
私は、time.hをstdlib.hなどの引用符で含めようとしましたが、何が起こっているのかまだ分かりません。誰でも何が起こっているのか知っていますか?
あなたがメイン – tpbowden
コール 'srand関数(内部でfuncitonを定義するべきではありません)' **一度だけ**、通常はメインの 'の最初のものの一つとして、 () 'を返します。それを複数回呼び出すと、生成された数値の(擬似)ランダム性が効果的に減少します(ランダム化されません)。 – pmg