我有 struct point {(...)}; 定义。但是,使用ANSI标准,似乎我必须使用Typedef进行。我该如何正确执行? typedef struct point {} point;? typedef struct {} point;? typedef struct point {};?

有帮助吗?

解决方案

你可以做:

typedef struct Point { ... } MyPoint;

然后使用两种声明:

struct Point p1;
MyPoint p2;

其他提示

这两个都是正确的:

typedef struct point { /* ... */ } point;
typedef struct { /* ... */ } point;

第一个版本定义 struct point 然后定义 point 作为别名,第二个定义 point 作为匿名结构的别名。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top