このコードを使用して、C++を使用してstdinから読み取ろうとしています
#include <iostream>
using namespace std;
int main() {
while(cin) {
getline(cin, input_line);
cout << input_line << endl;
};
return 0;
}
コンパイルするとこのエラーが発生します。
[root@proxy-001 krisdigitx]# g++ -o capture -O3 capture.cpp
capture.cpp: In function âint main()â:
capture.cpp:6: error: âinput_lineâ was not declared in this scope
何が足りないのか、何かアイデアはありますか?
ベストアンサー1
変数が定義されていませんinput_line
。
これを追加:
string input_line;
そしてこれを追加します。
#include <string>
完全な例は次のとおりです。また、while ループの後のセミコロンを削除しました。getline
ストリームの終了を適切に検出するには、while 内に を含める必要があります。
#include <iostream>
#include <string>
int main() {
for (std::string line; std::getline(std::cin, line);) {
std::cout << line << std::endl;
}
return 0;
}