如何編譯C++原始碼(“iostream.h not found”錯誤)?

如何編譯C++原始碼(“iostream.h not found”錯誤)?

我不想討論 C++ 或任何程式語言!

我正在學習C++,所以我的步驟是:

在vim中開啟hello.cpp並寫入以下內容

#include <iostream.h>
int main()
{
    cout << "Hello World!\n";`
    return 0;
}

所以,之後我在終端機上嘗試了這個

g++ hello.cpp

並且輸出是

hello.cpp:1:22: fatal error: iostream.h: No such file or directory
compilation terminated.

你有什麼建議?有什麼對我有用的逐步指南嗎?

答案1

你應該使用#include <iostream>,而不是iostream.h;這表單非常古老並且多年來已被棄用。

您可以在 上閱讀到超出您可能想了解的內容與非表格在這裡: http://members.gamedev.net/sicrane/articles/iostream.html

(另外,您應該編寫std::cout或有一行,using namespace std;否則您的下一個錯誤將是關於編譯器找不到 的定義cout。)

答案2

你應該更改iostream.hiostream.我也遇到了與您相同的錯誤,但是當我更改iostream.h為 just時iostream,它工作正常。也許它也適合你。

換句話說,更改以下行:

#include <iostream.h>

讓它這樣說:

#include <iostream>

依照標準中的定義,C++ 標準函式庫頭檔沒有.h副檔名。

如上所述里卡多·穆里的回答,您還需要cout透過其完全限定名稱進行調用std::cout,或使用這兩行之一(最好位於您的#include指令下方但位於其他程式碼上方):

using namespace std;
using std::cout;

第二種方法被認為是更可取的,特別是對於嚴肅的程式設計項目,因為它只影響std::cout,而不是引入std命名空間中的所有名稱(其中一些名稱可能會幹擾程式中使用的名稱)。

相關內容