int const *p是表示p指向的内容不能改变,即*p不能改变,p可以改变,在想问的是,如果
答案:1 悬赏:0 手机版
解决时间 2021-03-28 15:07
- 提问者网友:人生佛魔见
- 2021-03-27 23:30
int const *p是表示p指向的内容不能改变,即*p不能改变,p可以改变,在想问的是,如果
最佳答案
- 五星知识达人网友:往事埋风中
- 2021-03-28 00:06
*p不能改变,是说,p指向地址存的值不能变。
而p改变了,只是p指向了另一个地址,虽然*p的值变了,但原本地址中指向的值并没有变。
这种定义,主要是为了让程序不去改内存中的值。
比如字符串处理中
void func(const char *p)
对于主调函数来说,只要不改变我传过去地址指向的值就可以了,至于p的值在函数里面爱怎么变,主调函数并不关心。主调函数保护的只是传过去地址上的数据。
而p改变了,只是p指向了另一个地址,虽然*p的值变了,但原本地址中指向的值并没有变。
这种定义,主要是为了让程序不去改内存中的值。
比如字符串处理中
void func(const char *p)
对于主调函数来说,只要不改变我传过去地址指向的值就可以了,至于p的值在函数里面爱怎么变,主调函数并不关心。主调函数保护的只是传过去地址上的数据。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯