※ ChatGPTを利用し、要約された質問です(原文:drand48()が使えない)
drand48()が使えない
このQ&Aのポイント
ウインドウズでのCコンパイル時に、drand48()関数が未定義のエラーとなります。
drand48()は非標準関数であるため、ウインドウズで使用することができません。
drand48()を使えない場合は、代替の乱数生成関数を利用するか、別の方法で乱数を生成する必要があります。
お世話になっております、皆様のおかげで昨日ウインドウズ上でCを動かせるようになったサルプログラマーです。
Borlandの無償配布をダウンロードしました。Linuxで
gcc program1.c -o program1 -lm -O
としてコンパイルできていたものをそのまま持ってきて(拡張子変えて)、
C:\bcc>bcc32 program1.cpp
としたら
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
program1.cpp:
エラー E2268 program1.cpp 61: 未定義の関数 'srand48' を呼び出した(関数 main() )
エラー E2268 program1.cpp 66: 未定義の関数 'drand48' を呼び出した(関数 main() )
*** 2 errors in Compile ***
となってしまいました。
いままでプログラムの中身は
========================================================
srand48(seed);
for(i=0; i<I; i++){
while(1){
do{
x=drand48()*2.0-1.0;
y=drand48()*2.0-1.0;
:
:
========================================================
という形でLinux上ではコンパイルできてましたが、ウインドウズに持ってきたらダメでした。ある掲示板でdrand48()は非標準関数であるとありましたが、このために使えないのでしょうか?[0,1)のdoubleの乱数を返す、また質がいいからオススメと友達に言われて使っていたのです。ですから非常にいいなあと思って使っていたのですが、どうにかならないでしょうか。使えるようにするにはどうしたらよいのでしょうか、色々あるかと思いますが何か解決方法をご教授ください。
お礼
そうなんですか・・・ ありがとうございました。