• 締切済み

コンパイルできない C++

以下エラーでC++のソースがコンパイルできない fatal error C1083: include ファイルを開けません。'gimite/socket.h': No such file or directory ヘッダーファイルには添付のようにgimite/socket.hを追加済みです

みんなの回答

  • S117
  • ベストアンサー率40% (18/45)
回答No.2

画像を見ればわかるのですが、できればIDEの名前もちゃんと書くようにしましょう。 さて、Visual Studioのソリューションエクスプローラーでフォルダに見えるこの物体。メニューなどをよく見ると実はこれ、「フィルタ」という名称が使われています。 コンパイラ自体は実際のフォルダ構成に従ってコンパイルするのですが、通常Visual Studioではすべてのソースとヘッダが単一のフォルダ上にフラットに作成(サブフォルダを作らない)されます。 また、デフォルトのソースフォルダとは関係のないフォルダに配置されたファイルをプロジェクトに追加した場合も、ソリューションエクスプローラー上では区別されません。 どうしてもフォルダを分けたいなら(Windows自身の) エクスプローラーを使ってそのように配置します。 どちらかというと、すべてフラットに配置したほうが、Visual Studioではわかりやすいでしょう。 フィルタはソリューションエクスプローラー上でソースとヘッダを整理する目的で使用します。

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

ソーリューションエクスプローラで生成したフォルダーと 本物のファイルシステム上のフォルダー構成とは別物です ためしに現状の状態でVCのメニューから ファイル > 開く > ファイルを実行した際に 『gimite』という名前のホルダーは無いが『socket.h』は存在する といった具合になっていると思います ご希望の状態にしたいのであれば Widnowsのマイコンピュータ(またはエクスプローラ)などファイルシステムを直接操作できるものを使ってフォルダーを作成してその中に『Socket.h』をコピー(または移動)をしましょう 先のファイルを開くのダイアログの中で 右クリックして『フォルダー』を生成するといった方法でもいいでしょう ソリューションエクスプローラで作成できるフォルダーは プロジェクト内でファイル拡張子の種別などよる管理に使われる仮想的なものです その証拠に『ソースファイル』『ヘッダーファイル』『リソースファイル』などのフォルダーが本物のファイルシステムに存在しないことがあげられます

関連するQ&A