【发布时间】:2014-08-04 00:05:47
【问题描述】:
听起来非常复杂,但这是一个简单的概念。 假设你有一些结构“foo”,如果它的成员是指向另一个 foo 结构的指针(如链表)
这似乎有效。
struct foo {
struct foo* ptr;
};
但是如果我想让 foo 成为一个类型呢?
比如我将如何执行以下操作?
typedef struct foo {
foo* ptr;
} foo;
ptr 的声明失败,因为 foo 还不是限定符。
【问题讨论】:
-
你要的是c还是c++?请选择一个!
-
放大之前的评论:C和C++在这方面不同,所以两者得到不同的答案。
-
看起来像 C,修改了标签,如果您有其他意思,请随时恢复。
-
没有什么能阻止你做
typedef struct foo { struct foo *ptr; } foo;- 你可以为同一个结构同时拥有struct _和typedef名称。 -
你是新的
C程序员吗?添加分号应该是一种反射。
标签: c pointers struct qualifiers