Domanda
I aveva struct point {(...)};
definito. Ma con gli standard ANSI sembra che devo farlo con typedef. Come faccio a fare questo in modo corretto? typedef struct point {} point;
? typedef struct {} point;
? typedef struct point {};
?
Soluzione
Si può fare:
typedef struct Point { ... } MyPoint;
e quindi utilizzare entrambi i tipi di dichiarazioni:
struct Point p1;
MyPoint p2;
Altri suggerimenti
Entrambi questi sono corrette:
typedef struct point { /* ... */ } point;
typedef struct { /* ... */ } point;
Il primo definisce versione struct point
e quindi definisce point
come alias per esso, mentre il secondo definisce point
come alias per uno struct anonima.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow