聚星亭
吾笨笨且懒散兮 急须改之而奋进
posts - 74, comments - 166, trackbacks - 0, articles - 0
C++博客
::
首页
::
新随笔
::
联系
::
聚合
::
管理
[转载]C/C++技术细节(VC编译器)
Posted on 2009-03-30 17:09
besterChen
阅读(472)
评论(0)
编辑
收藏
引用
所属分类:
C/C++/STL/boost
以下内容引用与 Pediy.com
1.Jmp stub Function
考虑以下函数:
Void Test(){}
Void main()
{ test();}
在debug情况下,编译后
Void Jmp_Test()
{
Jmp to Real_test();
}
Void main()
{jmp_test()}
如何让编译器不产生Jmp Stub function。
解决方法,在Link选项中去掉Increment link.
2.自定义节,数据代码合并在一个节
#pragma data_seg(".mydat") //指定该.cpp/.c(其实应该是某个.obj文件) 数据存放的节
注意: Dword a; // 未初始化,数据仍保存在.data节
Dword a=0; //这样a就保存到.mydat节了
#pragma code_seg(".shell")//指定该.cpp/.c(其实应该是某个.obj文件) 代码存放的节
#pragma comment(linker,"/SECTION:.mydat,RWE") //修改节属性
#pragma comment(linker,"/
SECTION:.shell,RWE")
#pragma comment(linker,"/MERGE:.mydat=.shell")//两节合并到.shell节
3.__declspec(naked)声明的函数不能使用局部变量
4.char[]
char test[]=”test”//假定 此处地址为0x4001000
void main()
{
printf(“%x”,test);
printf(“%x”,&test);
}//执行以上代码分别输出什么
答案:两个都输出0x4001000,哈哈,没想到吧。
5.char*与char[]
char* test1=”test”;
char test2[]=”test”
考虑下执行该程序会产生什么状况
void main()
{
test1=”new test”;
test2=”new test”;
}
考虑下再看答案
编译后是这样的。
atest db ‘test’,0
Test1 dd offset of attest
Test2 db ‘test’,0
所以test2=”new test”;编译过不了,当然我们仍然能够通过memcpy给test2赋值
6.数据对齐
Word a;
Char str[]=”ddddd”;
Void main()
{
Printf(”%d”,&str-&a);//输出什么,考虑一下
}
答案:可能输出2,也可能输出4
以后我会自己总结一些贴过来的!
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
相关文章:
笨鸟先飞学编程系列之九-C++的模板编程
ExVim 试用手记 —— 工程管理之 调试程序
ExVim 试用手记 —— 工程管理之 编译工程
笨鸟先飞学编程系列之八 浅析C++的继承与多态性
群里的一道吐血题目,不过让我挺感慨的,发出来与大家分享
笨鸟先飞学编程系列之 指针
笨鸟先飞学编程系列-浅析C++的封装性
C++中临时对象的学习笔记
笨鸟先飞学编程系列-C++的基础特性
Static关键字学习笔记
网站导航:
博客园
IT新闻
BlogJava
知识库
博问
管理
Powered by:
C++博客
Copyright © besterChen
公告
平凡的我,生活在这平淡的世界,抛开那些为了摆脱平淡而所做的"付出",才发现:自己正被这平淡的事所包围着,所感动着!
回首已走过的路,想想那些感动你或被你感动的人:使自己从中得到升华!!
----besterChen
吾笨笨且懒散兮 急须改之而奋进!
随笔分类
(81)
C/C++/STL/boost(17)
html/javascript/css
obj-c/cocos2d 相关(1)
php/ThinkPHP/yii/(1)
Vi/Vim/GVim(8)
WTL/MFC/GuiLib(4)
笨鸟先飞学编程系列(9)
服务器部署/优化
脚本研究(7)
逆向分析(4)
软件安全中的JJXX(3)
外挂/游戏分析(1)
项目工程(5)
心情日志(11)
英语学习(9)
杂七杂八(1)
随笔档案
(74)
2012年3月 (1)
2011年12月 (1)
2011年9月 (1)
2011年1月 (3)
2010年10月 (1)
2010年7月 (3)
2010年6月 (3)
2010年5月 (5)
2010年4月 (4)
2010年3月 (4)
2010年2月 (7)
2010年1月 (1)
2009年12月 (4)
2009年11月 (1)
2009年10月 (2)
2009年9月 (4)
2009年8月 (1)
2009年6月 (2)
2009年5月 (1)
2009年4月 (7)
2009年3月 (13)
2009年2月 (5)
牛人博客
Combojiang的博客
Peter Ferrie
微软高级反病毒研究员
vczh的博客
团队博客
FULLTURING CODER
很让人期待的博客...
Lighting Games
我公司的网站,嘻嘻~
友情链接
EvilKnight 的百度空间
同学的博客
Mr.Dong
阿咪豆腐
零度空间
cntrump 的空间
迷途之旅
明次的博客
我的英语博客
我的英文博客
星际盟主
知名论坛
52破解论坛
ARTeam
一个很棒的国外论坛
UnPaCk
看雪学院
逆向小组
一个学弟办的论坛
最新随笔
1. 转载 gtalk 的一些资料
2. 如何检测内存泄漏问题
3. [PHP]突然想学PHP了,开篇写个PHP相关的学习笔记
4. [game] B.B Ball 游戏上线
5. [转载] 在Tiled Map中使用碰撞检测
6. [game]Bang!Bang!
7. [game]Samurai Master
8. 老师布置的作业:让写一个电子钟,发上来留个纪念
9. 笨鸟先飞学编程系列之九-C++的模板编程
10. 梦到 德国 拿世界冠军了~
11. ExVim 试用手记 —— 编写代码之 移动光标
12. ExVim 试用手记 —— 工程管理之 调试程序
13. ExVim 试用手记 —— 工程管理之 编译工程
14. ExVim 试用手记 —— 工程管理之 修改工程配置
15. ExVim 试用手记 —— 工程管理之 创建工程
16. ExVim 试用手记 —— 前言
17. 今天发现了个好东西——exVim~
18. 笨鸟先飞学编程系列之八 浅析C++的继承与多态性
19. 感慨下武汉的破天气
20. 群里的一道吐血题目,不过让我挺感慨的,发出来与大家分享
21. [翻译]AngelScript 实用手册之 好的习惯
22. [翻译]AngelScript 实用手册之 第一个脚本(Your first script )
23. 笨鸟先飞学编程系列之 指针
24. 笨鸟先飞学编程系列-浅析C++的封装性
25. [翻译]AngelScript 实用手册之 编译AngelScript脚本库(Compile the library)
26. [翻译]AngelScript 实用手册之 许可(License)
27. [翻译]AngelScript 实用手册之概述
28. [翻译]AngelScript 实用手册之一 指南
29. 今天开始翻译 AngelScript 实用手册
30. Show一下我的VIM的语法高亮
31. C++中临时对象的学习笔记
32. [以前的博文]心情不好,无乱的牢骚几句,发泄一下:还有8个月我就要失业了~~
33. 笨鸟先飞学编程系列-C++的基础特性
34. 笨鸟先飞学编程系列之四 内存操作
35. Static关键字学习笔记
36. 忽然发现,我对感情的问题很彷徨……
37. 写了个很笨的走迷宫(效率很差……)
38. Switch结构学习笔记
39. 明天就是科锐的入学考试了,好激动,都失眠了~
40. 笨鸟先飞学编程系列之三 函数
搜索
积分与排名
积分 - 164209
排名 - 158
最新评论
1. re: [分享]将老罗的水波纹特效代码编译成了Lib供VC使用
有问题请教 大师
--159295556898
2. re: 笨鸟先飞学编程系列之九-C++的模板编程[未登录]
Windows编程基础是本实用的好书
--菜鸟
3. re: 笨鸟先飞学编程系列之四 内存操作
评论内容较长,点击标题查看
--辰
4. re: 笨鸟先飞学编程系列之前言[未登录]
评论内容较长,点击标题查看
--菜鸟
5. re: Show一下我的VIM的语法高亮
求问博主为什么我放入了cpp.vim 没有效果
--shafeng
6. re: ExVim 试用手记 —— 工程管理之 调试程序
用 windbg调吧
--rg
7. re: [PHP]突然想学PHP了,开篇写个PHP相关的学习笔记
就这一篇?
--test
8. re: 老师布置的作业:让写一个电子钟,发上来留个纪念[未登录]
应该是WIN32汇编写的吧,我下了金山卫士会报毒。
不过我想应该是误报。不知道是不是
--a
9. re: ExVim 试用手记 —— 前言
评论内容较长,点击标题查看
--TAMI27Thornton
10. re: 笨鸟先飞学编程系列之 指针
太高深了。。。 学习。。。。。。。。。
--小菜猫
11. re: 广海社区 --- 编程大塞题目《打印九九乘法表》
胖子这么变态。。。
puts("1x1=1");
.....
puts("9x9=81");
--小菜猫
12. re: [PHP]突然想学PHP了,开篇写个PHP相关的学习笔记
该死的。 你还没写PHP文章呢! 等死我了!
--小菜猫
13. re: 笨鸟先飞学编程系列之 指针
看来你的指针学的很潜啊。
--HuKer
14. re: [PHP]突然想学PHP了,开篇写个PHP相关的学习笔记
学海无涯啊~~~~
嘿嘿……↖(^ω^)↗加油哦~
--孔伟
15. re: 突然想学PHP了,开篇写个PHP相关的学习笔记
胖子你啥时候教我PHP啊。 我可是天天盯着呢~!
--小菜猫
16. re: [game] B.B Ball 游戏上线
来看看B牛 BY:明次
--明次
17. re: 笨鸟先飞学编程系列之八 浅析C++的继承与多态性
好,谢谢,正需要研究
--李逵
18. HPy4Si , [url=http://oshykvrddhqi.com/]oshykvrddhqi[/url], [link=http://uqxsjxdqwiaw.com/]uqxsjxdqwiaw[/link], http://kbyunqckswea.com/
评论内容较长,点击标题查看
--kkngqcfgz
19. Xf6F2q , [url=http://okppdtrywaxj.com/]okppdtrywaxj[/url], [link=http://oagnutcxwefb.com/]oagnutcxwefb[/link], http://mxsesllsxojj.com/
评论内容较长,点击标题查看
--cegjjn
20. re: [转载]Radix Sort 的介绍 --------- 复杂度为O(n)的排序方法 [未登录]
Quick sort之所以快,是因为它非常之cache-friendly,远比radix sort好得多……
--a
21. re: Switch结构学习笔记
好文章, 非常细致
--李现民
22. re: 浅析游戏辅助工具的开发(一)
评论内容较长,点击标题查看
--mifei
23. re: [分享]将老罗的水波纹特效代码编译成了Lib供VC使用
能不能教我怎样让它显示在指定的位置啊 呵呵 我的QQ361062263 谢谢
--QQ:361062263
24. re: [分享]将老罗的水波纹特效代码编译成了Lib供VC使用
我没法设置图片的显示的位置
--陈超
25. re: 忽然发现,我对感情的问题很彷徨……
缘分的确很重要。。。。
再坚持坚持,会有的。
你还小。。。
--SIsIA
26. re: 老师布置的作业:让写一个电子钟,发上来留个纪念
这好像是易语言的吧?
--SIsIA
27. re: 老师布置的作业:让写一个电子钟,发上来留个纪念
@nehCretseB
是VB?笑掉大牙!
--nero
28. re: [转载] 中序遍历二叉树, 非递归[未登录]
@小天狼星
可惜,转载的……
--besterChen
29. re: 老师布置的作业:让写一个电子钟,发上来留个纪念
汇编现在还有应用领域吗 搞不懂
--foxtail
30. re: 老师布置的作业:让写一个电子钟,发上来留个纪念
看到汇编指令 我很纠结
--吴冬亮
31. re: [以前的博文]心情不好,无乱的牢骚几句,发泄一下:还有8个月我就要失业了~~
评论内容较长,点击标题查看
--小天狼星
32. re: [转载] 中序遍历二叉树, 非递归
这些基础在许多公司的面试题中常见。估计你能考90分了。
--小天狼星
33. re: 在天草软件安全培训报名了,想跟着老师好好的学习本领[未登录]
@nick
呵呵~~
--besterChen
34. re: 在天草软件安全培训报名了,想跟着老师好好的学习本领
天草垃圾站你也报?
他们的客户端是木马病毒程序,监视你的一举一动
还会截你屏幕,查看你硬盘资料,更绝的是可以破坏你的分区表
封你VIP号没商量,一分钱不退你
--nick
35. re: 浅析游戏辅助工具的开发(一)[未登录]
@hoodlum1980
会的~,不过得等我毕业以后~
(*^__^*) 嘻嘻……
--besterChen
36. re: 浅析游戏辅助工具的开发(一)
@besterChen
期待lz能把做外挂那部分文章继续写完~~。~
--hoodlum1980
37. re: 浅析游戏辅助工具的开发(一)[未登录]
@hoodlum1980
一般用调试器比较多,需要具体看代码了才搬IDA出来的~
--besterChen
38. re: 好听音乐网 -- 歌曲下载分析流程及程序的编写[未登录]
@hoodlum1980
恩,是啊~
我会注意的,(*^__^*) 嘻嘻……~
--besterchen
39. re: 笨鸟先飞学编程系列之八 浅析C++的继承与多态性
看看还是不错的,支持。
--hoodlum1980
40. re: 怀念 —— 与大牛一起度过的日志
我就是用win32的,但是用起来肯定是最吃力的,要查MSDN的频率非常高。。。。而且是全英文;
--hoodlum1980
阅读排行榜
1. [转载] 在Tiled Map中使用碰撞检测(14193)
2. ExVim 试用手记 —— 工程管理之 创建工程(10574)
3. Show一下我的VIM的语法高亮(7946)
4. ChaiScript 体验手册(6277)
5. ExVim 试用手记 —— 编写代码之 移动光标(6136)
6. ExVim 试用手记 —— 前言(6021)
7. 给MFC对话框程序添加状态栏的方法(5800)
8. 笨鸟先飞学编程系列之四 内存操作(5636)
9. [翻译]AngelScript 实用手册之概述(4871)
10. ExVim 试用手记 —— 工程管理之 修改工程配置(3940)
11. 笨鸟先飞学编程系列之八 浅析C++的继承与多态性(3763)
12. [转载]Radix Sort 的介绍 --------- 复杂度为O(n)的排序方法 (3699)
13. 笨鸟先飞学编程系列之九-C++的模板编程(3550)
14. 老师布置的作业:让写一个电子钟,发上来留个纪念(3461)
15. 笨鸟先飞学编程系列之 指针(3095)
16. 浅析游戏辅助工具的开发(一)(3048)
17. 今天发现了个好东西——exVim~(3004)
18. 笨鸟先飞学编程系列-浅析C++的封装性(2834)
19. 广海社区 --- 编程大塞题目《打印九九乘法表》(2722)
20. 群里的一道吐血题目,不过让我挺感慨的,发出来与大家分享(2707)
评论排行榜
1. 群里的一道吐血题目,不过让我挺感慨的,发出来与大家分享(24)
2. 老师布置的作业:让写一个电子钟,发上来留个纪念(12)
3. 怀念 —— 与大牛一起度过的日志(8)
4. [分享]将老罗的水波纹特效代码编译成了Lib供VC使用(7)
5. 笨鸟先飞学编程系列之九-C++的模板编程(7)
6. 浅析游戏辅助工具的开发(一)(7)
7. [以前的博文]心情不好,无乱的牢骚几句,发泄一下:还有8个月我就要失业了~~ (7)
8. Show一下我的VIM的语法高亮(6)
9. 笨鸟先飞学编程系列之四 内存操作(6)
10. ExVim 试用手记 —— 前言(6)