我从c ++开始,但我不明白如何解决此问题:
#include <iostream>
#include <string>
#include <ctime>
#include <cstdlib>
using namespace std;
int main(int argc, const char * argv[]) {
//std::cout << "Hello, World!\n";
string str ("Teststring");
cout << str.end() << endl;//HERE
谢谢
答案 0 :(得分:0)
str.end()
会产生意外的行为-它返回一个迭代器,该迭代器从字符串末尾的字符开始。std::cout << str.c_str() << endl;
替换最后一行,您将会取得进步。有关更多信息,请参见http://www.cplusplus.com/reference/string/string/c_str/。指针/迭代器实际上是不必要的,因此std::cout << str << endl;
也可以正常工作。