struct中如何用成员的地址找到结构首地址
来源:互联网 发布:oracle minus 优化 编辑:程序博客网 时间:2024/04/30 07:23
#include <stdio.h>
#define abc(s,m) (size_t)&(((s*)0)->m)
#define bcd(ptr, type, member) ({const typeof(((type*)0)->member)* __mptr=(ptr);\
(type*)((char*)__mptr-abc(type,member));})
struct test{
int a;
char b;
long t;
};
int main()
{
struct test *p;
struct test m;
m.a = -1;
m.t = 37;
p = bcd(&(m.t), struct test, t);
printf("%d\n", p->a);
return 0;
}
#define abc(s,m) (size_t)&(((s*)0)->m)
#define bcd(ptr, type, member) ({const typeof(((type*)0)->member)* __mptr=(ptr);\
(type*)((char*)__mptr-abc(type,member));})
struct test{
int a;
char b;
long t;
};
int main()
{
struct test *p;
struct test m;
m.a = -1;
m.t = 37;
p = bcd(&(m.t), struct test, t);
printf("%d\n", p->a);
return 0;
}
- struct中如何用成员的地址找到结构首地址
- 如何通过一个结构体成员变量的地址找到该结构体的首地址?
- 如何通过一个结构体成员变量的地址找到该结构体的首地址
- 怎样根据结构成员的地址找到结构体的地址(list_entry)
- 根据class/struct中一个成员的地址,获取该class/struct的地址
- 如何用ace_message_block发送和接收struct结构的数据
- 如何用代理ip地址
- C语言之struct大小、首地址与内存对齐—由结构体成员地址得到结构体首地址
- 关于C/C++中struct中成员的内存地址对齐。
- 根据结构体某一成员的地址得到该结构体变量的首地址
- 通过结构体某个成员的地址计算结构体首地址
- 通过结构体某个成员的地址计算结构体首地址[转]
- 结构体的地址与数据成员的地址
- 如何用VB获得机器的MAC地址
- 如何用ASP来获取网卡的MAC地址
- 如何用VC++开发读取网卡MAC地址的程序
- 如何用VC++开发读取网卡MAC地址的程序
- 如何用VC++开发读取网卡MAC地址的程序
- python学习笔记:(一)
- Android之大话设计模式----整体说明及章节介绍
- 何时用、如何建Oracle分区表?
- linux ssh session 复制
- 判断safari_判断IE_判断firefox_判断Opera—JS判断浏览器
- struct中如何用成员的地址找到结构首地址
- scp verification failed
- 第十二周上机任务项目1-调用函数输出星号图任务1
- JDK1.6下载|JDK1.6官方下载|JDK1.6中文版下载|JDK1.6中文CHM中文API下载
- 启动时报错
- MySQL数据库高可用性方案
- make双冒号规则及百分号
- Agile default lifecycle phases
- 一些要看的经典书籍