编程错误
#include<string.h>
#include<iostream>
using std::string;
using std::cin;
using std::cout;
using std::endl;
int main( )
{
string s;
cin >> s;
cout << s << endl;
return 0;
}
编译器显示
error C2679: binary '>>' : no operator defined which takes a right-hand operand of type 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >' (or there is no acceptable c
onversion)
error C2679: binary '<<' : no operator defined which takes a right-hand operand of type 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >' (or there is no acceptable c
onversion)
执行 cl.exe 时出错
修改 把#include<string.h>的.h去掉就可以了
运行程序界面
在执行读取操作时,string对象会自动忽略开头的空白(即空格符,换行符,制表符等)并从第一个真正的字符开始读起,直到遇到下一处空白为止。
如上所述,如果程序的输入是“ Hello World ”(注意开头和结尾的空格),则输出将是“Hello”,输出结果中没有任何空格。