发布网友 发布时间:2022-04-25 18:52
共4个回答
热心网友 时间:2023-10-08 14:13
string是可以使用下标赋值的,只是你赋给list的值有问题啊,list[0]=0,而string也是以'\0'代表字符串结束,所以你这个字符串会被认为是个空串,当然输出是什么都没有的。另外头文件也得包含追答呵呵,昨天没注意到,你的string list是个默认构造函数,这样就没有为list分配空间,自然list[i]就会报出超出string范围的错误,可以简单更改为string list(6, '\0'),事先为list指定一个大小。
热心网友 时间:2023-10-08 14:14
因为对string下标赋值,和数组一样,下标不能超过string的长度,你定义的string list,只是一个空串,也就是长度为0,你用任何的下标都会超过长度,所以会运行崩溃的!热心网友 时间:2023-10-08 14:14
你好像头文件就没有包括string,最主要,c++中string是类,你建的list是对象,在c语言中字符串才是用字符数组操作的追问漏打了,是带有string的头文件的
热心网友 时间:2023-10-08 14:15
额。。你给string初始化下就行了。比如:list = "sdfdfs";