docs(): fixed #19

This commit is contained in:
ruanyf
2021-09-09 16:05:05 +08:00
parent c0a3347b25
commit 1aef769e3f
4 changed files with 27 additions and 2 deletions

View File

@@ -133,6 +133,14 @@ s[0] = 'z';
为什么字符串声明为指针时不能修改声明为数组时就可以修改原因是声明为指针时字符串是一个保存在内存“栈区”stack的常量“栈区”的值由系统管理一般都不允许修改声明为数组时字符串的副本会被拷贝到内存“堆区”heap“堆区”的值由用户管理是可以修改的。
为了提醒用户,字符串声明为指针后不得修改,可以在声明时使用`const`说明符,保证该字符串是只读的。
```c
const char* s = "ello, world!";
```
上面字符串声明为指针时,使用了`const`说明符,就保证了该字符串无法修改。一旦修改,编译器肯定会报错。
第二个差异是,指针变量可以指向其它字符串。
```c