• ベストアンサー

C++ includeファイルの検索

以下のサイトを参考にC++の勉強をしています。 http://www.kab-studio.biz/Programing/Codian/MxA/09.html 残念ながら上記サイトにはどのファイルをインクルードすれば いいのか記述されておりません。Visual C++ 2008 Express Editionを 使用しているのですが、インクルードファイルを自動的に検索して ソース上に挿入するような機能はないのでしょうか?

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

  • ベストアンサー
  • titokani
  • ベストアンサー率19% (341/1726)
回答No.4

wstring FName; FName = L"C:\\test.txt";

noname#86217
質問者

お礼

ついにプログラムが完成しました。私の人生至上、最高の作品であることを確信しています。 ーーー #include <stdio.h> #include <string> #include <iostream> #include "windows.h" using namespace std; int main(int argc, char *argv[]) { HANDLE hFind; WIN32_FIND_DATA FileData; wstring FName; FName = L"C:\\test.JPG"; hFind = FindFirstFile(FName.c_str(), &FileData); if(hFind == INVALID_HANDLE_VALUE){ cout << "ファイルを発見できませんでした" << endl; } else{ cout << "ファイルを発見しました" << endl; } FindClose(hFind); return(0); }

その他の回答 (4)

  • titokani
  • ベストアンサー率19% (341/1726)
回答No.5

> hFind = FindFirstFile(FName, &FileData); なんで戻すかな。 wstring FName; FName = L"C:\\temp\\test.txt"; hFind = FindFirstFile(FName.c_str(), &FileData);

noname#86217
質問者

お礼

無事コンパイルできました。 ありがとうございました。

  • titokani
  • ベストアンサー率19% (341/1726)
回答No.3

だから、wstringを使えばいいんですってば。

noname#86217
質問者

お礼

#include <stdio.h> #include <string> #include "windows.h" using namespace std; int main(int argc, char *argv[]) { HANDLE hFind; WIN32_FIND_DATA FileData; wstring FName; FName = L"C:\\temp\\test.txt"; hFind = FindFirstFile(FName, &FileData); return(0); } ーーーーーーーーーーーーーーーー ためしてみましたが残念ながら・・'FindFirstFileW' : 1 番目の引数を 'std::wstring' から 'LPCWSTR' に変換できません。・・というエラーが出ます。

  • titokani
  • ベストアンサー率19% (341/1726)
回答No.2

Express EditionでCStringは使えません。 std::stringかstd::wstringなら使えます。 LPCSTR,LPCWSTRへの変換はc_str()を使います。 std::string str; LPCSTR p=str.c_str(); std::wstring wstr; LPCWSTR wp=wstr.c_str();

noname#86217
質問者

お礼

#include <stdio.h> #include <string> #include "windows.h" using namespace std; int main(int argc, char *argv[]) { HANDLE hFind; WIN32_FIND_DATA FileData; string FName; FName = "C:\\test.txt"; hFind = FindFirstFile(FName.c_str(), &FileData); return(0); } ーーーーーーーーーーーーーー 残念ですが上記のコードは以下のコンパイルエラーになりました。 error C2664: 'FindFirstFileW' : 1 番目の引数を 'const char *' から 'LPCWSTR' に変換できません。 わたしのVisual C++での開発生活は早くも幕を下ろしたということです。おとなしくJavaを使うことにします。

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

・そのサイトを全部見る ・自分で調べる で解決できるはずです. VC++ なので, 必要なら MSDN Library を探せばいい. だいたい Java だって「インポートするクラスを自動的に検索してソース上に挿入する機能」は持っていない.

noname#86217
質問者

お礼

java自体に「インポートするクラスを自動的に検索してソース上に挿入する機能」はありませんが、eclipse上では、エラーにしたがってオペレーションすれば自動的に挿入してくれます。

関連するQ&A

専門家に質問してみよう