首頁  >  問答  >  主體

linux - g++编译,总是提示头文件fstream错误

代码很简单,但是总是提示fstream头文件有错误,操作系统是centos7 64位。

#include <fstream>
#include <iostream>
using namespace std;

int main()
{
    cout<<"hello,world"<<endl;
    return 0;
}

编译报如下错误:
[root@mystudy test]# g++ -o test test.cpp
In file included from /usr/include/c++/4.8.2/fstream:41:0,

             from test.cpp:1:

/usr/include/c++/4.8.2/cstdio:120:11: error: '::ets' has not been declared
using ::ets;

天蓬老师天蓬老师2764 天前691

全部回覆(3)我來回復

  • 黄舟

    黄舟2017-04-17 17:10:18

    因為它就是有錯誤的啊。不知道什麼時候被修改了。

    都說過多少遍了,不要隨意使用 root 權限,你們不聽。沒事非要搬石頭,這次就砸自己腳了吧?

    最安全的建議:重裝系統。
    (可能)省力一點的建議:重裝 g++ 之類的套件(可能需要先卸載再安裝)

    回覆
    0
  • 巴扎黑

    巴扎黑2017-04-17 17:10:18

    同樣的程式碼,在gcc v4.8.2下編譯測試沒有問題。
    看這裡報錯,應該是在cstdio這個檔案的120行處的ets沒有宣告。 ets没有声明。
    看了下cstdio这个文件,这个地方应该是using ::gets;,所以你看看你的cstdio看了下cstdio這個文件,這個地方應該是using ::gets;,所以你看看你的cstdio這個文件是否正常?裡面是不是被修改了。

    回覆
    0
  • 黄舟

    黄舟2017-04-17 17:10:18

    重裝build-essential即可。頭文件掛了剩下的就不用寫了。

    回覆
    0
  • 取消回覆