指向指针的指针在C中是如何工作的?指向指针的指针在C中是如何工作的?你什么时候用?
3 回答
侃侃尔雅
TA贡献1801条经验 获得超16个赞
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
| | 58 | | | 63 | | 55 | | | h | e | l | l | o | \0 | |
+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+
您可以在这里看到,在地址63处,字符串“hello”开始。所以在这种情况下,如果这是内存中唯一出现的“Hello”,
const char *c = "hello";
c
c
const char **cp = &c;
cp
c
c
const char ***cpp = &cp;
cpp
cp
数组的名称通常会产生第一个元素的地址。因此,如果数组包含类型为 t
,对数组的引用具有以下类型 t *
..现在考虑一个类型数组的数组。 t
:对这个2D数组的引用自然会有类型 (t *)*
=t **
,因此是指向指针的指针。 尽管字符串数组听起来是一维的,但实际上是二维的,因为字符串是字符数组。因此: char **
.函数 f
将需要接受类型的参数。 t **
如果要更改类型的变量 t *
.还有很多其他的原因在这里无法列举。
- 3 回答
- 0 关注
- 598 浏览
添加回答
举报
0/150
提交
取消