上一篇的程序题:我出现了这个错误request for member ‘xxx’ in something not a structure or union;
调试了很久才发现错误,所以大家一定要打好基础,不然debug真的很痛苦!
结构体调用有2种,A.value或者A->value
具体怎么用呢?
结构体变量用 . 结构体指针用 ->
如:
typedef struct A{
int value;
}A;
void p(A *a){
printf("%d",a->value)//这里a是结构体指针
}
int main(){
A a;
a.value=1;
printf("%d",a.value)//这里a是结构体A的变量
p(&a)
}
相信看完这个例子就很清楚了!
再来看 comparison between pointer and integer [-fpermiss
这个纯属的自己傻布拉吉,在上一篇中
for(p=s;*p!='\0';p++)}
judge(&a,*p);
}
总是喜欢写成*p!="\0",害心累,举个栗子;
a[2]=="c";
a[2]=='c';
//这2个完全不同的!!
双引号表示字符串,单引号表示字符,所以"c"表示字符串首地址,您想想,数组元素等于首地址,这不太合适吧哈哈哈;
所以啊,以后不要在像我一样手欠把字符写成字符串了,别看只差一个自,这2个差别太大啦!
最后再多嘴一下
typedef struct A{
int value;
}A;
结构体里面的变量不能在里面赋值,只能定义了结构体变量才能赋值