首页 > 其他 > 详细

解决const char* to char* 的错误

时间:2020-02-28 17:32:35      阅读:111      评论:0      收藏:0      [点我收藏+]

一般情况下

 char* string = "abc";

编译后会出现标题中的错误。

我们只需要在字符串前加上const_cast<char*>即可,这个作用是丢弃变量的const声明,但不能改变变量所指向的对象的const属性。即:const_cast用于原本非const的对象;如果用于原本const的对象,结果不可预知(C++语言未对此种情况进行规定)

 char* string = const_cast<char*>("abc");

 

另外补充: char * 是分配在字符串常量区的,所以不可改变指向的值,但是可以改变指针的地址

                  char[] 是分配在栈上的,可以改变指向的值,但不可以改变指针的地址

参见: https://blog.csdn.net/qq_32783703/article/details/87707766

解决const char* to char* 的错误

原文:https://www.cnblogs.com/strive-sun/p/12377804.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!