• 售前

  • 售后

热门帖子
入门百科

关于为什么const char*不能赋值给char *

[复制链接]
知足常乐77 显示全部楼层 发表于 2022-1-15 18:41:43 |阅读模式 打印 上一主题 下一主题

很多初学者都会写出这样的代码。把字符串常量(即被const修饰的指针)赋值给了char类型的指针。会出现如下的报错。我总不能把限制条件多的数据赋值给限制条件少的变量吧
 
赋值有如下规律:
1。把需要存储空间小的类型赋值给大的。(会发生隐式转化)(但float到double会有精度丢失)
2。相同类型之间赋值。
3。限制条件少的赋值给限制条件多的。
char *可以赋值给const char *是其多一个限制条件,反之,是不行的。
不过:
const的修饰指的是不能直接改变数据,但可以间接啊!我强制类型转换一下,不过对于储存在文字常量区的字符串常量你是没有权限改的。


来源:https://blog.caogenba.net/m0_62853450/article/details/122480640
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作