您的位置:首页 > 理论基础 > 数据结构算法

linux C 开发中重要的数据结构——结构体

2016-02-26 11:13 323 查看
在linux的驱动开发中,最常用的,也最重要的数据结构是结构体,它也最容易使人混淆。要掌握结构体,首先要弄明白运算符的优先级:

在所有运算符中,下面4个运算符的优先级是最高的:结构体运算符“.”和“->”、用与函数调用的“()”以及用于下标的“[]”,因此它们同操作数之间的结合也最紧密。

例如对:

struct {

int len;

char *str;

}*p;

表达式

++p->len :增加len的值,其中的隐含括号关系是++(p->len)

(++p)->len: 先执行p的加1操作,再取len的值

(p++)->len: 先取len的值,再执行p的加1操作

*p->str: 取指针str所指向的对象的值

*p->str++:先取指针str所指向的对象的值,然后将str加1

(*p->str)++:先取指针str所指向的对象的值,然后将对象值加1

*p++ ->str:先取指针str所指向的对象的值,然后将P值加1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: