struct Apartment {
int floor; // aparment's floor
};
void main() {
Apartment apartments[10];// array containing all the apartments
create_apartments(apartments);
};
void create_apartments(struct Apartment *apartments) {
int i,pos;
pos=0;
for(i=0;i<10;i++){
*(apartments+pos)->floor = i; //error apears here!
pos++;
}
}无效类型参数的一元‘*’(有‘int’)出现在注释行。有人能告诉我怎么回事吗?谢谢:)
发布于 2014-02-13 17:14:11
->运算符已经取消指针的引用。应用*再次尝试取消引用类型为int的(apartments+pos)->floor。删除*。
编辑:更常见的是这样写:
apartments[pos].floor = i;https://stackoverflow.com/questions/21760906
复制相似问题