0
A
回答
1
您有一个空字符串。其中没有字符,包括第0个字符,您正在尝试阅读。实际上你需要在字符串添加字符:
std::string l;
l.push_back('\0'); //Or any other character
std::cin >> l[0];
2
你需要做的
cin>>l;
在你现在的代码状态,当您尝试访问l[0]
您试图访问一个内存位置,其可能或者可能不在那里。 cin >> l[0]
不会更改保持为0的字符串的大小。
因此,当您尝试执行cout << l
时,您正在有效地打印空字符串。
另一种方法是
string s;
s.resize(1);
相关问题
- 1. 如何从输入文件输出值的所有索引
- 2. 字符串输入和输出用C
- 3. 如何使用cout输出\符号?
- 4. “IndexError:字符串索引超出范围”试图验证输入
- 5. 从文件输入字符串并比较输入字符串
- 6. LLVM字符串输入/输出
- 7. 帮助C字符串输入/输出
- 8. 字符串矩阵输入输出
- 9. 从字符串流中输入值
- 10. java输入字符串,当输入'stop'时停止
- 11. 当我有更长的输入时弹出python索引错误
- 12. 从输入字符串
- 13. easyAutocomplete输入框值给出搜索字符串并且不完整字符串
- 14. 字符串索引超出范围和使用输入数据的总数
- 15. 如何在输入字符串时输出字母
- 16. Elasticsearch日期字段:时代毫秒输入,字符串输出?
- 17. Scanf没有输入字符
- 18. 当用户输入的值不在字符串数组中时出错
- 19. Arraylist搜索字符串,但没有输出
- 20. C++从“cout”更改输出
- 21. 如何输入字符串,输出INT,使用阵列蟒蛇
- 22. 使用java,输入字符串=“aabbcdeaaaabbb”,输出必须是aaaa
- 23. 当输入字符串而不是int时抛出错误
- 24. 在UTF-8字符串上使用数组索引时输出错误
- 25. 当输入有值时,将类名添加到数字输入
- 26. 从字符输入连接字符串
- 27. 字符串输出
- 28. 输入字符串
- 29. 输入字符串
- 30. 输入字符串
代替的push_back,你可以做一个调整大小。这将避免使用魔法角色推回。在一些实现中,它甚至可以避免push_back可能发生的额外分配 – bashrc