C ++ Hello World Tutorial错误

时间:2014-02-06 18:08:54

标签: c++

我正在学习C ++,方法是按照书中的示例进行操作,输入后再进行双重检查,我会不断收到错误消息。我无法弄清楚出了什么问题。如果重要的话,我正在使用Visual C ++ 2010。

#include <iostream>
using namespace std;

int main()
{
// Prompt the user for data 
cout << "Please enter two words:" << endl;

//Read in the values
string b, c;
cin >> b >> c;

// Give feedback
cout << "I understood: "
     << b << ", and "
     << c << endl;

// NOw, lets's read a whole line of text as a single entity
cout << "Now, type in a whole line of text, "
     << "with as many blanks as you want:"
     << endl;

//getline() is a function; we'll talk more about them in Part3 
string wholeLine;
getline( cin, wholeLine );

//In the cout statement below, remember that \"
// is an escape sequence!
cout << "I understood: \"" << wholeLine << "\"" << endl;

// And we're done! 
return 0;
}

有四个错误。 错误代码是:

错误1 错误C2678:二进制'&gt;&gt;' :找不到哪个运算符带有'std :: istream'类型的左手操作数(或者没有可接受的转换)i:\ helloworld.cpp 11

错误2 错误C2679:二进制'&lt;&lt;' :没有找到哪个运算符采用'std :: string'类型的右手操作数(或者没有可接受的转换)i:\ helloworld.cpp 15

错误3 错误C3861:'getline':找不到标识符i:\ helloworld.cpp 25

错误4 错误C2679:二进制'&lt;&lt;' :没有找到哪个运算符采用'std :: string'类型的右手操作数(或者没有可接受的转换)i:\ helloworld.cpp 29

2 个答案:

答案 0 :(得分:7)

#include <string>缺少string

答案 1 :(得分:1)

正如韦斯利所说,确保你有图书馆。

另外,在同一程序中使用 getline() cin 时要非常小心。一个可以影响另一个,你可以得到意想不到的结果。为了安全起见,我发现在使用getline之后使用 cin 之前使用 cin.ignore()是很有用的。干杯!