Ho appena imbattuto in un frammento di codice dice: -Qual è il significato di una struttura all'interno di un'altra senza il nome di un tag?
struct a {
int mem1;
char mem2;
struct {
int inner_mem1;
int inner_mem2;
};
};
e ho scoperto che il frammento di codice utilizzando i membri della struct interno direttamente utilizzando il nome della variabile del struct esterno !!! es:
struct a *avar;
....
avar->inner_mem1
E 'legale, il codice è la compilazione e comunque lavorando bene !. Qual è lo scopo di usarlo in questo modo? Eventuali scenari specifici?
Per favore fatemi sapere i vostri pensieri.
Perché sono utili: http://stackoverflow.com/questions/8932707/what-are-anonymous-struct-and-unions-useful-for-in-c11 –