首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C中“&”的含义(在linux内核类宏中)

C中“&”的含义(在linux内核类宏中)
EN

Unix & Linux用户
提问于 2015-05-21 08:00:29
回答 1查看 108关注 0票数 -2
代码语言:javascript
运行
复制
#define TCP_SKB_CB( __skb )   ((struct tcp_skb_cb *)&((__skb)->cb[0]))

在这种情况下,&意味着什么?

EN

回答 1

Unix & Linux用户

发布于 2015-05-21 08:18:24

这是标准的C“地址”操作员..。上述建筑意味着:

  1. __skb:给宏的参数(指向struct skbuff的指针)
  2. (__skb)->cb:skb中的cb数组
  3. (__skb)->cb[0]:数组中的第一个元素
  4. &((__skb)->cb[0]):第一个元素的地址
  5. ((struct tcp_skb_cb *)&((__skb)->cb[0])):第一个元素的地址,转换为指向struct tcp_skb_cb的指针
票数 4
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/204761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档