关于codeblocks 的程序中编译出现对于iostream, no such file or directory

  • Post author:
  • Post category:其他


当我们将.cpp 文件 误设为.c 文件的时候, 就会出现上述编译报错信息。

解决办法是删除这个文件, 重新建立.cpp文件。

另外,还有如下情况。

其实 <iostream.h>是c风格的,可用,但注意格式:

要么是:

#include <iostream>

using namespace std;

要么是:

#include <iostream.h>

注意,这时是不能用using namespace std;这句话的,否则会出现你遇到的问题.

在标准C++里面,是不用#include <iostream.h>这种形式了,而要使用#include <iostream>

在VC6是在C++标准出来前发布的,所以它可以使用#include <iostream.h>这形式.

===注:如果在VS中VC的include文件夹中iostream文件不是.h的扩展名,最好是用第一种形式

另外在code::blocks, 我设置的编译器是gc++






gcc error – “iostream: No such file or directory”





  1. #include <iostream>





  2. using




    namespace


    std;



  3. int


    main(


    void


    )


  4. {

  5. cout<<

    “Hello World!\n”


    ;



  6. return


    0;


  7. }

使用命令

gcc -o test test.c

test.c:1:20: iostream: No such file or directory

杯具啊,gcc是c的编译器,g++才有c++的iostream

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

————————————————————————-

错误2:

undefined reference to `std::cout’等错误

原因

(1)gcc和g++都是GNU(组织)的一个编译器。

(2)后缀名为.c的程序和.cpp的程序g++都会当成是c++的源程序来处理。而gcc不然,gcc会把.c的程序处理成c程序。

(3)对于.cpp的程序,编译可以用gcc/g++,而链接可以用g++或者gcc -lstdc++。

总之,老拿gcc编程c++起来了。。。