关于不能将char** 类型转化为 const char**

对于二级指针来说,不能将char** 类型转化为const char** 类型。

const char x = 31;
char y = 41;
char *q = &y;


&x的类型显然为 const char *, &q的类型是char **,  假设能将char **类型转化为 const char **, 那么可以另外定义一个变量:

const char** p = &q;
由于*p的类型是 const char *, 与&x的类型相同, 那么这样

*p = &x;
于是,即 q == &x,而q 的类型只是char*,  那么便可以通过 *p = 61;  来修改x的值。但是x 本身是const 类型的。

所以解决这个矛盾, 可以将 char ** 类型转化为 char* const * 类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值