VS C++ 2019中const char* 类型的值不能用于初始化char*的解决与理解

解决方法:
1、在char *p = “hello”的前面加const
2、或者,右键project -> 属性 -> C/C++ -> 语言 -> 符合模式:否

为什么加个const就OK了,我个人的理解,就像int &r=3;//编译器是会报错的。因为编译器觉得你可能会修改3这个常量,所以在前面加一个const,变成常引用,常引用不会修改值,所以这样就不会有问题,同样的个人觉得char前(char也是用常量文本进行初始化)加个const原理是一样的。
就变成了const char *p=“hello”;如果想解开const可以这么写:

char *p1=const_cast<char*>(p);

第二种解决办法是为什么,具体我也不知道,修改为否,把后面的英文也别忘了删掉哟!

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值