我有两个结构A和B:
struct A {
int v;
}
struct B {
struct A* ptrs[MAX_PTRS];
}基本上,我希望结构B的元素是指向结构A的指针数组(MAX_PTRS是在头文件中定义的宏)。
现在,假设我有一个全局变量:
struct B* sB;出于某种原因,如果我尝试使用以下命令
int x = sB->ptrs[0]->v;我得到一个错误“无效的类型参数'->'”。
怎么啦?(假设一切都已初始化并正确分配)
发布于 2013-03-27 13:49:05
结构的每个右括号后面都应该有;符号。
您的代码没有任何问题
struct B* sB;
int x = sB->ptrs[0]->v;但是你需要初始化你的sB。
https://stackoverflow.com/questions/15651247
复制相似问题