
「erf c++」や「誤差関数 c++」など検索をかけたところ、以下のようなC言語での関数がでてきまうす。
#include <math.h>
double erf(
double x
);
これを、C++プログラムに組み込み、例えば簡単な
cout << erf(0.01) << endl;
としたところ、
「error LNK2019 :未解決の外部シンボル"~"が関数_mainで参照されました。」
というビルドエラーが出てしまい、できませんでした。
C++だと上記のプログラムではないやり方なのでしょうか?教えてください。
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
うん, それはとても残念だ. erf が使えるのは, VS だと 2013 以降なのだよ.
https://msdn.microsoft.com/ja-jp/library/dn32904 …
は 2015 だけど, 「その他のバージョン」で 2013 も選べることから (正確には「2013 しか選べない」ことから) わかる.
で「今まで作ってきたVS2012でのプログラム」が「VS2015でも使用できるのか」は私も知らん. とりあえず「VS2012 では erf は使えない」とだけ書いておこう.
No.3
- 回答日時:
なんでプロトタイプ宣言が書いてあるのでしょう?
math.h のプロトを使わないとまずいのでは?
マングリングでリンカに渡る関数名が合わなくなっているのでしょう。
No.2
- 回答日時:
手元で実験した結果
コンパイラ (のバージョン) によるっぽい
ことが判明. 少なくとも GCC 6.1 と Visual Studio 2015 では何の問題もなく実行できる.
と思って補足にあるプログラムを見てみたら
double erf(double b);
と宣言してる時点で「ダメっぽい」雰囲気が漂ってるなぁ....
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ファイルの開き方
-
セーブの仕方を教えて下さい
-
XnViewにwebpを「いつも開く」...
-
何人目?
-
あるプログラムのコマンドライ...
-
未使用の変数を一括検索する方法
-
socketでの複数NICの扱い
-
OS入ってる機器のソフト・アプ...
-
binファイルってiphone専用です...
-
画像を読み込むのと取り込むの...
-
C? C++??
-
「VRAMにデータを書き込む過程...
-
登録しないと見れないページを...
-
VisualBasic2008の非ユーザーコ...
-
Bluestacks内でダウンロードし...
-
正しい五十音順について
-
障害物回避プログラム
-
Windows7 搭載ノートPCにおける...
-
関数電卓をc言語でつくりたいの...
-
☆★大学院入試のアルゴリズムに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイルの開き方
-
あるプログラムのコマンドライ...
-
OS入ってる機器のソフト・アプ...
-
Excelで4096点以上のFFTの方法
-
読み込み中にアクセス違反が発...
-
銃を発砲するならともかく、日...
-
VBAにてメール作成した際、一部...
-
ドロップダウンリストの文字を...
-
PICマイコンのコピー(クローン...
-
UWSCで指定のフォルダを開きたい。
-
XnViewにwebpを「いつも開く」...
-
Excelに埋め込んだVBAのプログ...
-
「Outlookが他のプログラムによ...
-
visual studio 2019を使ってい...
-
未使用の変数を一括検索する方法
-
powered byの表記について
-
VBAでユーザーフォームが自動的...
-
画像を読み込むのと取り込むの...
-
VC++コンソールアプリでウイン...
-
Google カレンダーの商用利用
おすすめ情報
ありがとうございます。以下に補足として記します。
[プログラム全体]
#include <iostream>
#include <cmath>
using namespace std;
//誤差関数
double erf(double b);
int main()
{
cout << erf(0.01);
return 0;
}
[エラーメッセージ]
エラー 1 error LNK2019: 未解決の外部シンボル "double __cdecl erf(double)" (?erf@@YANN@Z) が関数 _main で参照されました。
エラー 2 error LNK1120: 1 件の未解決の外部参照 (1行1列)
Visual Studio Express 2012を使っています。
include <iostream>
#include <math.h>
using namespace std;
int main()
{
cout << erf(0.01);
return 0;
}
上記のようにプログラムを組んでもエラーが出ます。
もしかしたら、バージョンが古く、VS2015ならできるでしょうか。
しかし、その場合、今まで作ってきたVS2012でのプログラムはVS2015でも使用できるのか分かりません。