- 博客(8)
- 收藏
- 关注
原创 对赋值操作的if判断
一直想知道赋值语句直接放在if中它到底是个什么意思?教科书上都说什么左值,但左值具体是什么一直还没个确定的说法看看下面这段程序: int b=0;004113AE mov dword ptr [b],0 int a=0;004113B5 mov dword ptr [a],0 if(a=1)004113BC mov dwo
2009-09-28 21:40:00 1281
转载 链接器都干了些什么?(转)
http://zqs1111.blog.163.com/blog/static/37203887200931421246189/目前项目在不停的增长,我想还是在它规模仍旧很小的时候把它的模块分清楚,不同模块分到不同的 projects 里面,这里面出现了很多问题,也反映了我知识上的很多不足。 1 , project 最后的输出要设置清楚,有的是 static lib ,有的是 dl
2009-09-28 17:36:00 433
原创 对象数组的析构
#include "stdafx.h"int count=0; class A { public: int num; A() { count++; printf("创建:%d/n",count); } virtual ~A() { printf("销毁:%d/n",num); } };void dosth(){ A a[10]; for(int
2009-09-20 21:46:00 1330
转载 C++堆栈祥解(转)
http://www.cppblog.com/dawnbreak/archive/2009/03/10/76135.html int main(){ int b=1; char s[] = "abc"; getchar(); return 0;} int b=1; 00411A7E C7 45 F8 01 00 00 00 mov dword
2009-09-17 17:05:00 488
原创 奇怪的 this 指针 (续)
晚上在自己都要放弃的时候 ,群里面的 西西给我 正确的解答 我忽略了自己做的函数调用实际是在做一个普通函数的调用 ,那个转换就明显就是这样子 pb->fun1 和 ff 的调用是完全不同的,虚函数表中放的是给函数地址,它并不天生是个成员函数 这个从汇编也可以看出来 pB->fun1();00413C93 mov eax,dword ptr [pB
2009-09-13 00:08:00 389
原创 奇怪的 this 指针
// vcTest.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"class A{public: void virtual fun1() { printf("this:%d A::fun1/n",this); }};class B{public: void virtual fun1() { printf("this:%
2009-09-12 21:07:00 403
原创 win32汇编一定要记住的函数调用过程
首先要知道 EIP 中放在的是程序执行代码的地址ESP放的是堆栈的栈顶的地址EBP放的是堆栈的栈底的地址 在执行函数调用的时候,调用者需要做的事情是:先将调用参数压栈,然后将调用者代码块的下一条代码的地址压栈。 被调用者需要做的事情是:首先将调用者的EBP压栈,再将栈顶的值赋给EBP,最后在栈上保持自己的临时变量。 在被调用者返回的时候,被调用者需要做的事情:
2009-09-09 23:46:00 1677
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人