4-8中的 char 和 char* 有一些疑问。

来源:5-8 字符串的指针表示

qq_慕虎7490545

2021-02-23

老师,你在4-8中讲的那个char str 和 char* pStr 两个helloworld在实际编译的时候,,char str 中存的数据可以被改变,而char* pStr 中存的数据缺不可以改变。
我想问: 这个现象是必然的吗,就是说不管我按照4-8视频中那个操作编译多少次,是不是只要使用 char* 这个字符串指针来存一个字符串,必然就把字符串 存进视频中说的那个不能改数据的值的地方去了,?

写回答

1回答

quickzhao

2021-02-24

一般而言,char str是一个字符,在C++中编译器会安排到栈上作为变量,所以其存储的值是可变的。而char* pStr 所指的是字符串常量,不会有变化,但指针本身是可变的,这里其实可以明确声明const char* pStr = "helloworld"

0
1
qq_慕虎7490545
非常感谢!
2021-02-24
共1条回复

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

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

3884 学习 · 1103 问题

查看课程