const和指针

来源:6-4 const与指针

jerry_zhu13

2020-12-12

老师你好,关于5-4节数组和指针我有个问题,视频演示里,pStr1和strHelloworld[]所存储的“helloworld”会通过优化方法使用同一个地址,我不大理解为什么会这样?pStr1用了const以后无法对指向内容进行修改了,而strHelloworld[]则是可以对指向的内容进行修改的,这两种定义方式为什么会指向同一片内存空间呢?
我自己跑了一边代码,发现结果是pStr1和pStr3两个用const限定了内容修改的指针指向了同一片区域,而其他的指向同一片内存空间,所以我不是很清楚到底是怎么回事。图片描述

写回答

1回答

quickzhao

2020-12-13

从编译器的角度来看,pstr1和pstr3都是指针,它们指向同一块不可写的区域,当然可以优化成同一块常量区域,pstr2你指定指向strHellloWorld的字符数组位置了。

0
2
jerry_zhu13
那在视频演示里,为什么strHelloWorld[](内容可变)与pStr1(内容不可变)会指向同一片内存区域呢?是因为优化算法的关系吗
2020-12-13
共2条回复

重学C++ ,重构你的C++知识体系

一部大片,一段历史,构建C++知识框架的同时重塑你的编程思维

3906 学习 · 1106 问题

查看课程