错误:一元'*'的无效类型参数(有'int')
struct test_t {
int var1[5];
int var2[10];
int var3[15];
}
test_t* test;
test->var1[0] = 5;
我该如何解决这个问题?
答案 0 :(得分:3)
你应该写:
struct test_t* test;
如果您想在每次声明该类型的变量时避免编写struct
,请使用typedef
:
typedef struct test_t {
int var1[5];
int var2[10];
int var3[15];
} test_t;
test_t* test;
旁注:在C ++中,结构名称放在常规名称空间中,因此在声明该类型的变量之前无需编写struct
。
答案 1 :(得分:0)
当您声明结构变量时,struct
关键字应该像
struct test_t* test;
如果您每次声明变量时都不想使用struct
关键字,只需使用typedef
。