首页
社区
课程
招聘
[原创]C语指针内幕
发表于: 2010-1-22 01:01 7470

[原创]C语指针内幕

2010-1-22 01:01
7470

作者:乱雪
来源:hi.baidu.com/lu4nx

R.E.C--F22叫我来篇稿,我实在不知道写啥,也很久没写过技术方面的东西了,刚看书时突然想到了写指针,所有的C语书上都把指针描述得很抽象,所以,老规矩,结合调试器+汇编来理解它。

其实指针和汇编中的间接寻址很像,抽象点说,运用指针可以间接性地访问某变量内容。我说得太抽象了,扔代码上来吧:

/*

C语指针演示,by:乱雪

2010.1.21

*/

#include <stdio.h>

int main(void)
{
int count = 10,lx, *pointer;  //定义两个整型变量count和lx,一个指针pointer。

pointer = &count;   //把count的内存地址赋给pointer,“&”是C语中的地址运算符,用于取内存地址
lx = *pointer;        //用“*”获得指针指向的内容,即 lx = 10
return 0;
}
mov         dword ptr [ebp-4],0Ah
lea         eax,[ebp-4]
mov         dword ptr [ebp-0Ch],eax

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
  • 1.jpg (19.75kb,301次下载)
  • 2.jpg (29.42kb,296次下载)
  • 3.jpg (22.90kb,296次下载)
  • 4.jpg (29.49kb,293次下载)
  • 5.jpg (29.56kb,297次下载)
收藏
免费 7
支持
分享
最新回复 (9)
雪    币: 18
活跃值: (80)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
这是基础啊
新人的救星啊
2010-1-22 04:46
0
雪    币: 109
活跃值: (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
希望lz有空写点驱动方面的教程。
2010-1-22 08:29
0
雪    币: 1491
活跃值: (985)
能力值: (RANK:860 )
在线值:
发帖
回帖
粉丝
4
基础。呵呵
  谢谢共享
2010-1-22 09:12
0
雪    币: 284
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
哎呀,这不是乱雪大黑客么。膜拜乱雪大黑客

o(∩_∩)o...哈哈
2010-1-22 09:31
0
雪    币: 267
活跃值: (24)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
6
格式排版得不错!
2010-1-22 09:38
0
雪    币: 433
活跃值: (1870)
能力值: ( LV17,RANK:1820 )
在线值:
发帖
回帖
粉丝
7
注册这么久,终于看见乱雪同志出来放炮了,呵呵
2010-1-22 21:36
0
雪    币: 220
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
mark下来,慢慢学习。。。
2010-1-23 05:27
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
登陆上来回个贴
乱雪写的文章易懂   以前很不明白指针概念。今天看了这篇贴子突然明白了
希望知雪大哥以后 多多写些东西 让我们学习学习
2010-1-23 12:30
0
雪    币: 180
活跃值: (76)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
10
呵呵 其实没什么 很多东西我都是靠调试才明白的 我是一个不喜欢太理论的人 所以每次看到书上太抽象的描述 都会去试着调试调试
2010-1-23 14:23
0
游客
登录 | 注册 方可回帖
返回
//