one trick in C pointer.
来源:互联网 发布:淘宝1688批发 编辑:程序博客网 时间:2024/05/22 17:50
#include <stdio.h>#include <stdlib.h>struct common_protocol{ int b; int c; int d;};struct Object{ int a; struct common_protocol *b;};/*really wonderful trickstruct Object *a = malloc(sizeof(struct Object) + sizeof(struct common_protocol));a->b = (struct common_protocol*) (a+1);*/int main(){ struct Object *a = malloc(sizeof(struct Object) + sizeof(struct common_protocol)); //a->b->d = 1; //error here due to b point to a unknown address or NULL. a->b = (struct common_protocol*) (a+1); printf("a: %x\n", a); printf("b: %x\n", a->b); printf("a: %x\n", &a->a); printf("b: %x\n", &a->b); printf("hello: %x\n", ((struct common_protocol *)a + 1)); a->b->d = 1; printf("%d\n", a->b->d); printf("%d\n", a->b->c); sleep(100); return 0;}
a: df0200
b: df0208
a: df0200
b: df0204
hello: df020c
1
0
- one trick in C pointer.
- pointer trick
- Mad Pointer in C
- Pointer in C/C++
- deeply understand pointer in C
- void pointer assignment in C
- const and pointer in c
- array and pointer in c
- One case to use of the `this` pointer explicitly in template class inherit
- c pointer
- [c++]错误multiple types in one declaration
- How to set NULL to a pointer in Managed C++?
- The amazing efficiency of pointer in C Programming Language
- Jump Tables via Function Pointer Arrays in C/C++
- type conversion of array and pointer in C(1)
- type conversion of array and pointer in C(2)
- C之小trick
- C/C++编程Trick
- 命运(dp)
- Android JNI知识简介
- UNIX文件I/O函数
- Oracle 监听器日志配置与管理
- POJ1308
- one trick in C pointer.
- 新浪技术部笔试题
- 26个Jquery使用小技巧
- Monkey and Banana(dp)
- C语言 ---- 快速排序算法
- Python十分钟入门
- Android的Service深入分析
- 看度谷SEO优化兴趣挑战赛
- java多线程组件一:CountDownLatch使用方法的总结