以下对结构体类型变量td的定义中,错误的是______。
A.typedef struct aa { int n; float m; }AA; AA td;
B.struct aa { int n; float m; }td; struct aa td;
C.struct { int n; float m; }aa;
D.struct { int n; float m; }td; struct aa td;
参考答案:C
解析: 本题的考点是C语言结构体的定义和自定义类型typedef。对于选项A,首先用typedef将结构体自定义为AA,再用AA定义结构体变量td是正确的。对于选项B首先定义结构体类型aa,再用struct aa定义结构体变量td也是正确的。选项D直接用无名结构体定义结构体变量td也是正确的。而选项C中,首先用无名结构体定义了结构体变量aa,再用结构体变量aa去定义结构体变量td是完全错误的。因此正确选项是C。