• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ロベールのC++入門講座)

ロベールのC++入門講座のコードに関する質問

このQ&Aのポイント
  • C++入門講座のコードに関して質問があります。
  • エラーメッセージが表示されて実行できません。
  • ヘッダーファイルの記述方法がわかりません。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

あなたは、「extern “C” int StrCount(const char* str, char ch); で StrCount と言う関数がどこかにあるからコンパイル後にリンクしてね」と宣言しています。 それなのに、 StrCountがどこにもないので、リンカーが「そんな関数ないよ?」とエラーを出しています。 本がないからわかりませんが、StrCountの関数があるヘッダファイルをインクルードするか、StrCountの関数をあなたが定義しなければいけません。

yu28ka14
質問者

お礼

的確なご指摘を有難うございます。教本を読み直し、試行錯誤研究してみます。

その他の回答 (2)

  • qwertfk
  • ベストアンサー率67% (55/81)
回答No.2

ファイル名が、ExternC1.cppとなっていますが、おそらくソースファイルを複数に分ける 方法についての練習問題ではないでしょうか? 本を持っていないので詳細がわかりませんが、おそらく、StrCountの中身が入ったcppファイルどこかにがあってそれと、ExternC1.cppを両方ビルドして、それらをリンクして使う方法が書かれていないでしょうか? このソースをみるかぎりでは、このファイルには修正は必要ないと思います。

yu28ka14
質問者

お礼

ご指摘有難うございます。教本を見直しましたが、それらしきcppファイルは見当たりませんでした。さらに研究してみます。

  • wormhole
  • ベストアンサー率28% (1626/5665)
回答No.1

「ロベールのC++入門講座」は読んだことありませんがエラーメッセージを読む限り 必要なのはヘッダファイルではなくライブラリではないかと。 >1>Sample.obj : error LNK2019: 未解決の外部シンボル _StrCount が関数 _main で参照されました。 >1>C:\Users\YUZO\documents\visualstudio2010\Projects\Sample\Debug\Sample.exe : fatal error LNK1120: 外部参照 1 が未解決です。

yu28ka14
質問者

お礼

ご教授有難うございます。研究してみます。

関連するQ&A