Si je fais ceci:typedef en équivalence c et le type
typedef int x[10];
x a;
Est-il même que: int a[10];
?
Si je fais ceci:typedef en équivalence c et le type
typedef int x[10];
x a;
Est-il même que: int a[10];
?
Oui, c'est la même chose. Si vous voulez en savoir plus, allez here.
Oui, si nous parlons de la syntaxe. Mais pensez à ceci:
typedef int MyType[5]; /* Some code, large enough fragment */ int func (MyType var) { /* Something that changes */ return 0; }
Si vous ne voyez que la déclaration func() vous pouvez penser qu'il reçoit var en valeur de sorte que tout changement à l'intérieur de la fonction est locale. Mais comme MyType est en réalité un tableau qui est un pointeur qui change var à l'intérieur de func() , vous pouvez changer la variable de l'appelant réel. Donc, en parlant de concept, ce n'est pas la même chose.
+ pour référence. –