みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

iostream インクルード時に発生するエラー

C++ の勉強をするためにVisualStudio2008にて下記コードをビルドしたのですが、エラーが発生してビルドが失敗しました。

■ コード
#include <iostream>
using namespace std;

int main() {
std::cout << "Hello World !";
return 0;
}

■ 操作
空のコンソールアプリケーションを作成し、ソースファイルに追加>新しい項目 にて "temp.cpp" を追加、コードを入力。その後 ビルド > ソリューションのビルド を実行。

■ エラー(一部)
>> 「説明」 列
warning C4985: 'strlen': 前の宣言に属性が存在しません。
error C2039: 'wmemcpy_s' : '`global namespace'' のメンバではありません。
error C3861: 'wmemcpy_s': 識別子が見つかりませんでした
error C2039: 'wmemmove_s' : '`global namespace'' のメンバではありません。
error C3861: 'wmemmove_s': 識別子が見つかりませんでした
error C2039: 'memcpy_s' : '`global namespace'' のメンバではありません。
error C3861: 'memcpy_s': 識別子が見つかりませんでした
error C2039: 'memmove_s' : '`global namespace'' のメンバではありません。

>>対応する「ファイル」列
d:\program files\microsoft visual studio 9.0\vc\include\exception
d:\program files\microsoft visual studio 9.0\vc\include\iosfwd
d:\program files\microsoft visual studio 9.0\vc\include\iosfwd
d:\program files\microsoft visual studio 9.0\vc\include\iosfwd
d:\program files\microsoft visual studio 9.0\vc\include\iosfwd
d:\program files\microsoft visual studio 9.0\vc\include\iosfwd
d:\program files\microsoft visual studio 9.0\vc\include\iosfwd
d:\program files\microsoft visual studio 9.0\vc\include\iosfwd

プロジェクトのプロパティやインストール時の構成などで何か問題があるのでしょうか。VisualStudio以外にはWindows SDK 、Windows SDK 6.0A、SQL Server2005などが導入されています。

再インストールするのもありかと思ったのですが、原因が分からないとまた同じ現象が発生しそうなため踏み切れません。

よろしくお願いします。

投稿日時 - 2009-08-12 18:19:07

QNo.5202111

困ってます

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

ms-dosでpathコマンド打ってpathが通ってますか?

>>>対応する「ファイル」列
>d:\program files\microsoft visual studio 9.0\vc\include\exception
D:ドライブっていうのが気になりました。

投稿日時 - 2009-08-13 06:57:46

お礼

ありがとうございます、無事ビルドと実行が出来ることを確認できました。

>ms-dosでpathコマンド打ってpathが通ってますか?
pathコマンドでは表示されませんでした。VCにてパスをセットしている可能性があるため、以下の手順でINCLUDEパスを確認してみました。

(1) ソリューションエクスプローラのプロジェクトを右クリックしてプロパティ
(2) ビルドイベント > ビルド前のイベントのコマンドラインに「echo %INCLUDE%」

すると、以前使用したDDKのインクルードパスが二つ含まれていました。

その後、以下の手順でビルドと実行が正常に行われることを確認しました。
(1) ツール > オプション > プロジェクトおよびソリューション > VC++ディレクトリを開く
(2) ディレクトリを表示するプロジェクト を インクルードファイル 
(3) 余計なインクルードパスを、↓矢印ボタンで最下位へ持っていく
(4) 適用して ビルド > ソリューションのビルド

ありがとうございました。

投稿日時 - 2009-08-13 10:35:58

ANo.1

このQ&Aは役に立ちましたか?

3人が「このQ&Aが役に立った」と投票しています

回答(1)