![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 50
UMAsanhao
这个作者很懒,什么都没留下…
展开
-
#ifndef#define#endif防止头文件重复包含, 你不是真的懂
转自:http://blog.csdn.net/q191201771/article/details/6399820注:以下所用环境皆为VS2005, 由于本人编程能力及表达能力有限, 大家有看不懂的地方可以多看几遍,有错误地方请一定指出 这里首先说明下几点基础知识, 相信大部分人对于以下几点大部分都已经知道了, 你也可以直接跳到最后部分看#ifndef#d转载 2015-08-07 14:35:57 · 408 阅读 · 0 评论 -
详解C++代码反汇编后的堆栈寄存器EBP和ESP
转自:http://www.cnblogs.com/pugang/archive/2012/05/25/2518499.html 最近在分析一个进程崩溃的严重问题,其中有些过程分析需要对ebp, esp 有清晰的理解,对于ebp 和esp相信大家都很熟悉了,但是为了使本文自成体系,我还是解释一下。ebp--栈底指针esp--栈顶指针 如图所示,简化转载 2015-08-07 14:44:05 · 441 阅读 · 0 评论 -
C++中堆栈,堆和栈的区别
转自:http://blog.csdn.net/steven30832/article/details/8267262 堆和栈的区别一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分转载 2015-08-07 14:42:49 · 573 阅读 · 0 评论 -
汇编---call & ret
使用汇编语言中的call命令 ,伴随着一些内容的入栈,那么,入栈的都是一些什么内容呢?它们入栈的顺序是什么样的? 不同的CPU可能有不同的规定。下面只说常见的简单CPU的指令。常见的CPU的CALL指令(“调用”指令)的功能,就是以下两点:(1)将下一条指令的所在地址(即当时程序计数器PC的内容)入栈,(2)并将子程序的起始地址送入PC(于是CPU的下一条指令就会转去执转载 2015-08-07 14:52:27 · 431 阅读 · 0 评论 -
浅谈C++中指针和引用的区别
转自: http://www.cnblogs.com/dolphin0520/archive/2011/04/03/2004869.html指针和引用在C++中很常用,但是对于它们之间的区别很多初学者都不是太熟悉,下面来谈谈他们2者之间的区别和用法。1.指针和引用的定义和性质区别:(1)指针:指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储转载 2015-08-07 14:59:28 · 426 阅读 · 0 评论 -
C++小结-编译原理
看了一些关于C++的文章,暂且先记录一下自己的想法: C++编译原理(以VS为例): 1、预编译(C++代码(有宏)---->C++代码(无宏)):编译器解析宏,将代码中存在宏的代码替换为宏定义的字符、C++的inline(内联)函数也是在此时替换的。此时编译器是否已经分析出了cpp文件的信息,如cpp编译后的文件运行时需要的大小,cpp文件中每个函数的大小之类的信原创 2015-08-07 14:53:04 · 617 阅读 · 0 评论 -
C++宏定义详解
转自:http://blog.chinaunix.net/uid-21372424-id-119797.html一、#define的基本用法 #define是C语言中提供的宏定义命令,其主要目的是为程序员在编程时提供一定的方便,并能在一定程度上提高程序的运行效率,但学生在学习时往往不能 理解该命令的本质,总是在此处产生一些困惑,在编程时误用该命令,使得转载 2015-08-07 14:27:58 · 360 阅读 · 0 评论 -
C++编译链接过程
转自:http://blog.csdn.net/edisonlg/article/details/7081357 GCC的编译过程总体来说,C/C++源代码要经过:预处理、编译、汇编和链接,四步才能变成相应平台下的可执行文件。File: hw.c[cpp] view plaincopyprint?#include转载 2015-08-07 14:34:49 · 419 阅读 · 0 评论 -
C++DLL编程详解
转自: http://blog.csdn.net/xupan_jsj/article/details/9028937 DLL(Dynamic Link Library)的概念,你可以简单的把DLL看成一种仓库,它提供给你一些可以直接拿来用的变量、函数或类。在仓库的发展史上经历了“无库-静态链接库-动态链接库”的时代。静态链接库与动态链接库都是共享代码的方式,如果采用转载 2015-08-07 15:00:41 · 531 阅读 · 0 评论