我正在做一个小测试,但我无法弄清楚为什么我的代码有问题:
cout << "Please input an integer >= 1000: ";
string input;
cin >> input;
string head =input.substr(0, input.length - 3);
string tail = input.substr(1, input.length);
cout << head+","+tail << endl;
这部分给出错误:
C3867'std :: basic_string,std :: allocator&gt; :: length':非标准语法;使用'&amp;'创建指向成员Ch2的指针d:\ codes \ ch2.cpp 48
我想知道它可能是substr
的参数问题,但不知道如何解决这个问题。你能帮我解决这个问题吗?谢谢!
答案 0 :(得分:2)
string head =input.substr(0, input.length - 3);
应该是
string head =input.substr(0, input.length() - 3);
答案 1 :(得分:1)
使用input.length()
而不是input.length
答案 2 :(得分:0)
@ cj9435042您使用了&#39; input.length&#39;用&quot; input.length()&#39;替换它。
out_stream