I era solito avere problemi con la scrittura di C, fino a quando ho appreso come è stato creato.
In C, il tipo è descritto nel modo in cui si utilizzerà una variabile di quel tipo.
Pertanto, quando si vede:
int *x;
significa che l'espressione *x
è di tipo int
, così x
è variabile di tipo puntatore a int.
e se si vede:
int x[5];
significa che l'espressione x[3]
è di tipo int
, così x
è una variabile di tipo array-di-int.
Quindi, per raggiungere la vostra espressione:
int (*x)[];
significa che l'espressione *x
è di tipo int[]
(vale a dire, una serie di int
di dimensione sconosciuta). Pertanto x
è una variabile di tipo pointer-to-an-array-of-int.
fonte
2012-04-27 12:41:35
+1 .... Fantastico! – Nawaz