c语言中结构体中有数组和指针时,什么情况下用->什么情况用.

如题所述

typedef struct
{
int a ;

}TYPE ;
使用结构体变量的成员时候用.
如TYPE v ;
采用 v.a= xxx;
使用的是结构体指针指向的结构体的成员的时候用->
如 TYPE *p ;
p = &v ;
采用p->.a = yyy ;
总之,->前面一定是个指针, “.”前面是个结构体或共用体变量追问

前面是数组或数组名呢

追答

前面如果是结构体/共用体数组,后面就跟".";
前面如果是结构体/共用体指针数组,后面就跟"->"。

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-03-25
c语言中为了使用方便和使之直观,可以把(*P).num改用p->num来代替,
它表示*P所指向的结构体变量中的num成员,(*P).num等价于p->num。
相似回答