
お世話になっております。
あるソフトウェアを使うに当たってMediSynというツールをコンパイルして
使うようにアドバイスをもらったのですが残念ながら力不足によりできないでいます。
もらったMedisynフォルダの中はcfg, cpp, headerで構成されていてそのうちのcppファイルを
全部コンパイルしてobjを作ればいいのかと思ってたのですが・・・
コンパイラをborlandとvisualstudio両方使ってもどちらもsrand48, drand48という関数がない?
といったエラーが出てきてしまいます
ググッたところいくつか該当する似たような問題は見つけられたのですがはっきりと解決方法は書かれていません。
それなら心当たりがあるという方、どうぞよろしくお願いします。
No.5ベストアンサー
- 回答日時:
どうやた2つの関数は UNIX OS が 用意している関数のようです。
2つとも乱数(ランダムな数値)を生成する関数で、drand48はdouble型の乱数を生み出し、srand48はdrand48を使う前に呼び出しdrand48が正しく動作する為に初期設定を行う関数のようです。この程度なら、自作でdoubleがたの乱数を生成する関数を作り、drand48が呼び出されている場所で置き換えて呼び出せば(srand48は無視で結構)正しく動作すると思います。もしよろしければ補足してください。
この回答への補足
皆様たくさんのアドバイスありがとうございます。
できることならcygwinを通さずwindowsのままやりたかったので
以下のURL
http://www001.upp.so-net.ne.jp/isaku/rand.html
から引っ張ってきた記述をcppファイルがincludeしていたheaderにぶち込んだところ解決しました。
また上のURLの内容を見る限りdrand()関数はvisual C++では使えない?らしいです。
立て続けで申し訳ないのですが、今度は宣言に型が多すぎるというエラーが出て
これは引っ張ってきた記述の中の
static long long x=0x1234ABCD330E;
↑longが2つもある
が原因のようです。しかしこのlong long以外で数字を表現できなさそうです。
それ以外はもう問題はないと思いますのでもう一知恵お貸しください。
No.2
- 回答日時:
ヘッダーファイル(多分header)にもコンパイルに必要な情報が入っていますよ。
vs c++2008しか使ったことがありませんが、統合開発環境(オレンジ色のアイコンのアプリケーション)で[ファイル(メニューバー)]⇒[新規作成]⇒[プロジェクト]⇒適当にプロジェクト名入力して、cppファイル内に「main()」という記述があるなら[win32 コンソールアプリケーション]、「WinMain(略)」という記述があるなら[win32 プロジェクト]、(両方なかったら補足してくださればまた回答します)を選択して[OK]⇒アプリケーションウィザードが開き、[次へ]⇒「空のプロジェクト」にチェックをつけ、他変更せず[完了]を押してください。長くなりましたが、これでプロジェクトが作られます。ソリューションエクスプローラーの「ソースファイル」部分にcppファイルを追加、「ヘッダーファイル」部分にheaderを追加してください。あとはビルドするだけで、[ビルド(メニューバー)]⇒[ソリューションのビルド]でビルドできます。cfgは何かの設定ファイルのようですが、何でしょうね?読まないとわからないですね。失敗したりわからなかったりしたら補足していただければ幸いです。No.1
- 回答日時:
Linuxじゃなきゃダメなんでしょうか?
使っているのはwindowsxpです。
borlandもvisualstudioも最新のダウンロードしたてなのでそちらのほうに
srand48,drand48という関数がかけてしまっているのかと思ってました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- FX・外国為替取引 MQL5にて謎のエラーが発生!だれか対処を教えてください! 1 2023/03/25 15:59
- その他(プログラミング・Web制作) データ解析ソフトRでのファイル入力read.csvがエラーになります 7 2022/03/27 22:11
- Outlook(アウトルック) outlookの送信エラーについて 1 2022/05/13 12:04
- その他(社会・学校・職場) 業務内容についてどう思いますか? 私は客先の仕事を下請けとして行うという仕事をしていますが、(客先の 2 2022/05/04 16:17
- その他(OS) DOSコマンド『dir』の『/o』オプション 3 2023/03/10 09:29
- その他(社会・学校・職場) 業務内容についてどう思いますか? 私は客先の仕事を下請けとして行うという仕事をしていますが、(客先の 3 2022/05/04 17:55
- Visual Basic(VBA) Excel VBA 複数ブックシートごとにデータを統合する方法について 4 2022/05/20 14:23
- Windows 95・98 再質問 5 2022/11/29 08:58
- Visual Basic(VBA) 複数ファイルのデータの統合について 12 2022/05/14 12:03
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB.NETで他のプロジェクトで作...
-
DirectXのパス設定
-
ユーザー名・作成者について(Vi...
-
srand48? drand48?
-
プロジェクトフォルダ名の変更...
-
VIsual C++6.0のソースを書くと...
-
エラーの原因は?「この関数の...
-
スタートアップにファイルを登...
-
borland c++6.0 英語化時の空文字
-
VC++で、ソースファイルを追...
-
printfで全角カタカナが文字化け?
-
.net を用いて RS232C通信を行...
-
C#でWin32 MFC DLLが呼び出せない
-
ディストリビューションウィザ...
-
DLLのスタティックリンクは可能?
-
VisualStudio2005のpdbファイル...
-
プリコンパイル?
-
VC++でexeファイルが作成できま...
-
ocxの作り方(MFC)
-
Visual Studioを使ったフォーム...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB.NETで他のプロジェクトで作...
-
エラーの原因は?「この関数の...
-
ソースから参照しているOCXの一...
-
ACCESSのEXEを作るのは可能...
-
VC++でexeファイルが作成できま...
-
VS2010 ProductVersion 変更
-
他の.CPPファイルに定義した関...
-
VB.NETでActiveX(OCXファイル)作成
-
コンパイルするときに、ファイ...
-
VB6で、非表示モジュール(?)の...
-
libssh2のインクルード
-
プロジェクトフォルダ名の変更...
-
VisualBasicを保存するときにで...
-
Visual Studioでプロジェクトが...
-
プリコンパイル?
-
VBのコンパイルしてときにbinフ...
-
EXEをつくるとレジストリが...
-
VB6.0の別名保存について
-
Visual Studio2008でヘッダファ...
-
VB6.0
おすすめ情報