【发布时间】:2020-07-29 05:35:08
【问题描述】:
如图所示,我声明了一个指向结构的指针,一个带有 typedef 关键字,另一个没有 typedef 关键字,我正在尝试分配同一个用户定义数组的地址,但我得到了一个第 19 行出错。
当我注释掉第 19 行并构建项目时,第 20 行没有出现错误。
【问题讨论】:
-
顺便说一句。没有人可以看到图像。我建议将代码作为文本复制并粘贴到问题中,然后将整个内容缩进 4 个空格(选择代码,使用 {} 按钮或 CTRL+K 键缩进整个块)。这总是有效的。
-
好的,我们现在可以看到图片了,但是您和其他所有人都使用文本比使用图片要好得多。
-
你混合了你的隐喻。
NODE是一个 typedef(即一个类型)。NODE2是指向struct node的全局范围指针。您可以为NODE2赋值,因为它是一个变量。惯例是不对变量使用全部大写,因为全部大写用于常量,例如#define PI 3.14159。最好使用struct node *my_node_pointer;或NODE my_node_pointer;但是,您不能 为type 赋值。因此,NODE = arr;无效。 -
我投票决定关闭它,因为所有代码都在图像中。此外,您还缺少 错误消息,这不是整个代码摘录。
标签: c data-structures struct