永发信息网

C语言指向这个结构体为什么要加&

答案:3  悬赏:0  手机版
解决时间 2021-04-06 11:39
struct nmma7660_data *data;
指向结构体是这样的:
data->nmma7660_client = client;
mutex_init(&data->value_mutex);

关于这些结构体的定义是这样的
struct nmma7660_data {
struct i2c_client *nmma7660_client;
struct mutex value_mutex;

};
为什么上面那个直接用data指向nmma7660_client ,而另一个用&data指向value_mutex
最佳答案
这个 & 是 取的 data->value_mutex 的 地址, 即 data 中的  value_mutex 的地址,
因为 C 语言中  -> 比 & 优先级高.
全部回答
 &c[1]表示是存放x这个变量的 内存地址 就好比 假如有一个叫x的人 这个人可以是任何人 我们就说他是一个人的变量 那么 &x表示的就是这个人的住址 明白

你哪只眼睛 看见data指向nmma7660_client 类型结构体变量了? struct nmma7660_data *data; 这只是定义了一个 指向结构体变量的指针 但是还没让他具体指向那个变量 他是个野指针 你贴的代码不全 肯定能找到类似 struct nmma7660_data xxx; struct nmma7660_data *data; data = &xxx; data->nmma7660_client = client;// 相当于 xxx.nmma7660_client = client; 另外 mutex_init(&data->value_mutex); //不是 &data指向value_mutex 而是 data指向xxx导致可以用data访问 xxx的成员value_mutex, 然后再得到这个成员的地址
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
总是有一些股票的投资顾问来向我推荐他们的股
江西五月份有哪些花开,5月份种植什么蔬菜 五
材料一 2007年10月—2008年5月全国CPI指数变
怎样用电脑配音?
求证:同位角相等,两直线平行
:为什么好多同学说我长得很娘啊,我长得真的
广联达图形算量GCL2013如何建立楼层?
暖气片的管道走地下垫层上怎样做
银行放贷的比率??
我家是100兆的宽带,但是为什么非常卡,连百
女朋友对我说一望可相见,一步如重城,我该怎
东莞印刷纸品礼品盒外发厂家
机械制造于自动化毕业论文
《米莉茉莉丛书》是吉尔·比特专为4~8岁儿童
啊写句子,写一句古代同情弱者的格言和古诗句
推荐资讯
hope可以加to do还是wish可以加to do?
请问吃波萝过敏如何消除?谢谢
八下学练优物理答案
《快递暂行条例》公布,哪些不能寄
日元太旺,喜土用火忌水仇金闲木适合养金龙鱼
什么是皮内痣,皮试是干嘛的。
用什么东西可以检测自己的鼠标有没有坏?
“庸俗、低俗、媚俗”之风内容十分低俗,对中
双色球复式7十1中3十1多少钱
兴义那家电动车配件最大货最全啊
十个字闺蜜生日祝福语,写给女闺蜜的生日祝福
冲锋衣的衣服材料
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?