在Qt写一个程序的时候忽然遇到这个问题。意思是说const char*向char*的转换是不允许的。
使用Qt来举个例子:
QString qstr("This is a test!");
char* str = qstr.toStdString.data();
这样就会报上面的错了,如果换成:
QString qstr("This is a test!");
const char * str = qstr.toStdString.data();
这就没有错了。很显然,qstr.toStdString.data的返回值是const char*型。
这样就带来一个麻烦,就是如果我们要对str进行修改什么操作的话就不可行了,只能另外再建立一个字符数组来复制str所指向的字符串了。
本文探讨了在Qt中从QString转换到char指针时遇到的问题,特别是constchar*与char*之间的不兼容性。文章通过示例说明了如何避免错误,并提出了在需要修改字符串内容时的解决方案。
9606

被折叠的 条评论
为什么被折叠?



