![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
反汇编
文章平均质量分 78
_子木_
这个作者很懒,什么都没留下…
展开
-
cpp反汇编之控制结构
控制结构主要是关于 if/else switch/case废话不多说。。献上代码及反汇编分析。。#includeint main(int argc , char *argv[]){ int nInt = 9;// if(0 == nInt) __asm { cmp DWORD PTR [EBP - 4h] , 0 ; jle __exit; }// __原创 2015-04-01 22:44:35 · 678 阅读 · 0 评论 -
cpp反汇编之类和结构体分析
废话不多说。。#includeclass CNumber{public: CNumber() { m_nOne = 1; m_nTwo = 2; } int __stdcall GetNumberOne() { return m_nOne; } int GetNumberTwo() { return m_nTwo; }1: #include2:原创 2015-04-07 16:32:04 · 899 阅读 · 0 评论 -
cpp反汇编之const分析
先来分析一个简单的例子。(注意容易出错)代码非常简单#include#includeusing namespace std;int main(){ const int a = 1; int* b = (int*)&a; *b = 2; cout << a << endl << *b << endl; return 0;}反汇编分析 重点之处有注释1: #i原创 2015-04-04 10:51:43 · 775 阅读 · 0 评论 -
cpp反汇编之数组
先贴上源代码#includevoid Show(char szBuf[]){ strcpy(szBuf , "Hello World");}char* RetArray(){ char szBuff[] = {"Hello World"}; return szBuff;}void main(){ int nArray[5] = {1 , 2 , 3 , 4 , 5};原创 2015-04-04 13:40:21 · 777 阅读 · 0 评论 -
cpp反汇编之指针
笔记比较零碎 只附上反汇编了。。。有待日后编辑完善1: #include2:3: int main()4: {00401330 push ebp00401331 mov ebp,esp00401333 sub esp,6Ch00401336 push ebx004013原创 2015-04-04 14:05:13 · 801 阅读 · 0 评论 -
cpp反汇编之构造函数2
先献上源代码#includeclass CNumber{public: CNumber() { m_nNumber = 1; } int m_nNumber;};void main(){ CNumber *pNumber = NULL; pNumber = new CNumber; pNumber->m_nNumber = 3; printf("%d \r\n原创 2015-04-01 22:51:45 · 598 阅读 · 0 评论 -
cpp反汇编之多继承
源码#includeclass CSoft{public: CSoft() { m_nColor = 2; } virtual ~CSoft() { printf("virtual ~CSoft()\n"); } virtual int GetColor() { return m_nColor; } virtual int SitDown() {原创 2015-04-02 10:04:46 · 701 阅读 · 0 评论 -
cpp反汇编之共同继承一个父类
先拿出源代码#includeclass CPerson{public: CPerson() { ShowSpeak(); } virtual ~CPerson() { ShowSpeak(); } virtual void ShowSpeak() { printf("%s::ShowSpeak()\r\n" , GetClassName()); } vir原创 2015-04-02 09:40:18 · 484 阅读 · 0 评论 -
cpp反汇编之菱形继承
先分析一个例子#includeclass CFurniture{public: CFurniture() { m_nPrice = 0; } virtual ~CFurniture() { printf("virtual ~CFurniture()\n"); } virtual int GetPrice() { return m_nPrice; }publ原创 2015-04-02 09:44:39 · 879 阅读 · 0 评论 -
cpp反汇编之继承之基类
先分析一个例子。#includeclass CBase{public: CBase() { printf("CBase\n"); } ~CBase() { printf("~CBase\n"); } void SetNumber(int nInt) { this->m_nNumber = nInt; } int GetNumber() { retu原创 2015-04-02 09:27:29 · 556 阅读 · 0 评论 -
cpp反汇编之protected
protected关键字:摘自MSDNprotected 关键字指定对 member-list 中的成员直到下一个访问说明符(public 或 private)或类定义的末尾的访问。只能通过以下项使用声明为 protected 的类成员:最初声明这些成员的类的成员函数。 最初声明这些成员的类的友元。 使用公共或受保护访问(派生自最初声明这些成原创 2015-03-31 14:55:41 · 803 阅读 · 0 评论 -
cpp反汇编分析之构造函数
子类构造函数先调用父类。子类保留父类一块空间。以一个例子分析:class A { public: A() { } ~A() { cout<<"~A"<<endl; } }; class B:public A { public: B(A &a):_a(a) {原创 2015-03-31 13:53:37 · 663 阅读 · 0 评论 -
c++指针和引用异同
说白了c++中的引用就是指针。。至少底层实现是这样。。一个例子说明。。一下#include int main(int argc , char *argv[]){ int a = 9; int *b = &a; int &c = a; ++c; *b += 2; return 0;}1: #include 2:3: int main(int argc原创 2015-04-07 10:59:09 · 514 阅读 · 0 评论