结构体成员的引用

有下面几个结构体:
struct SIMPLE {
    int a;
    char b;
    float c;
};          //SIMPLE是个结构标签

struct SIMPLE x;
struct SIMPLE y[20], *z;

或者
typedef struct {
    int a;
    char b;
    float c;
}Simple;   //Simple 是个类型名    
 
Simple x;
Simple y[20], *z;

struct COMPLEX {
    float f;
    int a[20];
    long *lp;
    struct SIMPLE s;
    struct SIMPLE sa[10];
    struct SIMPLE *sp;
};

struct COMPLEX comp;

结构体成员直接访问:
comp.sa[4].c

结构体成员的间接访问:
当拥有一个指向结构的指针时,,由于点操作符优先级高于间接访问操作符,所以必须使用括号。
void func( struct COMPLEX *cp)



可以这么引用:
(*cp).f

但是为了方便,C提供了 箭头操作符:"->"
左操作数必须是指向结构的指针,右操作数是该结构的成员。如:
cp->f
cp->a
cp->s


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值