Question

J'avais struct point {(...)}; défini. Mais avec les normes ANSI il semble que je dois le faire avec typedef. Comment puis-je faire cela correctement? typedef struct point {} point;? typedef struct {} point;? typedef struct point {};?

Était-ce utile?

La solution

Vous pouvez faire:

typedef struct Point { ... } MyPoint;

et ensuite utiliser les deux types de déclarations:

struct Point p1;
MyPoint p2;

Autres conseils

Ces expressions sont correctes deux:

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

La première version définit struct point et définit ensuite point comme un alias pour elle, tandis que le second définit point comme un alias pour un struct anonyme.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top