1. ホーム
  2. C++

iostreamの場合、codeblocksプログラムのコンパイル時にそのようなファイルやディレクトリは表示されません。

2022-02-26 13:03:59

上記のコンパイルエラーメッセージは、.cppファイルを誤って.cファイルにしてしまった場合に発生します。

解決策は、ファイルを削除して、.cppファイルを作り直すことです。

あるいは、次のようなシナリオもあります。

実は <iostream.h> は c-style で、利用可能なのですが、フォーマットに注意してください。



どちらかです。



#include <iostream>



名前空間std.を使用する



どちらか:



#include <iostream.h>



このときusing namespace std;というフレーズを使うと、今回のような問題が発生するので注意しましょう。

標準C++では、#include <iostream.h> の代わりに、#include <iostream> を使用します。







VC6では、C++標準が出る前にリリースされたので、#include <iostream.h> という形で使うことができます。

===注意:VSのincludeフォルダにあるiostreamファイルが拡張子.hでない場合、最初の形式を使用した方がよいです。





また、code::blocksで、コンパイラをgc++に設定しました。

<スパン gcc エラー - "iostream。そのようなファイルまたはディレクトリはありません。





  1. #include <iostream>
  2. 使用 名前空間  stdです。  
  3. int  main( ボイド )   
  4. {  
  5.   cout<< <スパン をクリックします。 ;  
  6. 戻る  0;  
  7. }  

コマンドを使用する



gcc -o test test.c



test.c:1:20: iostream: そのようなファイルやディレクトリはありません

gcc は c 用のコンパイラ、g++ は c++ 用の iostream を持っています。



参考:http://www.linuxquestions.org/questions/linux-software-2/gcc-error-iostream-no-such-file-or-directory-641330/

-------------------------------------------------------------------------

エラー2



std::cout'への未定義の参照などのエラー

原因



(1) gcc、g++ともにGNU(組織)コンパイラです。







(2) 接尾辞が .c のプログラムと .cpp のプログラムは、g++ では c++ のソースプログラムであるかのように扱われます。しかし、gcc はそうではありません。gcc は .c プログラムを c プログラムとして扱います。







(3) .cpp プログラムは、gcc/g++ でコンパイルし、g++ または gcc -lstdc++ でリンクしてください。

要するに、古いテイクのgccプログラミングc++をアップする。