|
1
7
一些评论:
也:
我们更容易想到你有两个数组。但是,从技术上来说(就编译器而言),您拥有的是两个 指针 . 一个是指向(指向字符的指针)的指针,另一个是指向(指向节点的指针)。 变量的声明很容易看出这一点,顺便说一下,从右到左最容易读取:
将*放在指针旁边是正确调用的
取消引用
那个指针。由于数组在技术上不存在,因此数组上的运算符[]也是一个解引用操作:
多个连续的*s:每个都取消引用它所操作表达式的结果。所以在写作时:
发生的是:
相反,如果你写
|
|
|
2
6
当放在一个类型旁边时,
|
|
3
3
如果您发现*符号难以阅读,请使用typedef帮助您的代码易于阅读。
|
|
|
4
2
第一个代码块中的语句都是正确的。
…意味着你有一个50的数组
你对
也是正确的。
当你写作时
…你说的是“为50分配存储空间”
|
|
|
5
0
澄清第一部分:
没有**运算符,只有*运算符。正如其他人所说,**声明一个指向指针的指针。因为您声明的是指针数组,并且指针是用*运算符声明的,所以在为指针分配内存时,需要使用
指向指针的指针不必声明数组。您也可以使用另一个指针指向的常规指针,如:
|
|
AstralHex · 矩阵乘法代码工作不正常 1 年前 |
|
|
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 1 年前 |
|
|
Die4Toast · 递归调用成员箭头运算符-> 1 年前 |
|
|
Anka Hanım · 关于结构和动态数组地址的问题 1 年前 |