按类别查询搜索结果
关于关键词 的检测结果,共 2078
wanderer_dl | 2015-05-13 23:10:17 | 阅读(550) | 评论(0)
    首先,让我们对程序的运行环境有一个总览,下图描述了一个典型的程序环境。    1、程序的内存布局    现代的应用程序都运行在一个内存空间里,在32位的系统里,这个内存空间拥有4GB的寻址能力。相对于16位时代i386的段地址加段内偏移的寻址模式,如今的应用程序可以直接...【阅读全文】
幽虞轩 | 2015-05-13 09:14:32 | 阅读(0) | 评论(0)
存储分配【阅读全文】
【C/C++】 布局
幽虞轩 | 2015-05-11 13:55:19 | 阅读(0) | 评论(0)
本节注重分清几个概念:.text .data .bss   堆   栈    静态存储区    只读存储区等从程序到a.out 把程序变成.text  .data  .bss  是编译原理完成的过程从a.out把程序映射到对应的内存地址空间是操作系统完成的,也就是在操作系统创建进程的时候完成的,在描述...【阅读全文】
【C/C++】 C 内对齐
幽虞轩 | 2015-05-11 13:49:44 | 阅读(0) | 评论(0)
一.内存对齐的初步讲解内存对齐可以用一句话来概括:“数据项只能存储在地址是数据项大小的整数倍的内存位置上”例如int类型占用4个字节,地址只能在0,4,8等位置上。例1: 代码如下:#include <stdio.h>struct xx{        char b;  &nbs...【阅读全文】
hitwh_Gypsy | 2015-05-06 11:09:04 | 阅读(1060) | 评论(0)
一、堆和栈的相关概念一个由C/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配...【阅读全文】
hitwh_Gypsy | 2015-05-06 10:49:47 | 阅读(700) | 评论(0)
C语言中的内存地址分配模型如下:说明:1、程序代码区:存放函数体的二进制代码。  2、全局区数据区:全局数据区划分为三个区域。全局变量和静态变量的存储是放在一块的:初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。常量数据存放在另一...【阅读全文】
hitwh_Gypsy | 2015-05-06 09:42:01 | 阅读(670) | 评论(1)
关于内存地址分配问题做的几个实验【阅读全文】
644924073 | 2015-05-01 08:17:30 | 阅读(1560) | 评论(0)
我们都知道在计算机内部数据的存储和运算都采用二进制,是因为计算机是由很多晶体管组成的,而晶体管只有2种状态,恰好可以用二进制的0和1表示,并且采用二进制可以使得计算机内部的运算规则简单,稳定性高。在计算机中存在实数和整数,而整数又分为无符号整数和有符号整数,无符号的整数表示很简单,直接采用其二进制形...【阅读全文】
zyicai | 2015-04-30 21:59:04 | 阅读(600) | 评论(0)
安静的美男子 | 2015-04-30 18:03:26 | 阅读(910) | 评论(0)
1、在C语言的运行过程中,需要内存来存储数据。C语言使用的内存总体可以分为两类:一类是静态区,一类是动态区。2、静态数据存储区包含:只读数据区、已初始化的读写数据区、未初始化的读写数据区      动态数据存储区包含:栈内存区域、堆内存区域     3、C语言编写的程序经过编译-连接...【阅读全文】
Titus_Sun | 2015-04-30 11:54:02 | 阅读(210) | 评论(0)
【C/C++】 对齐
linux_player_c | 2015-04-21 11:11:04 | 阅读(2990) | 评论(0)
内存对齐问题首先我们拿几个问题热热身,如下所示的结构体,请诸位来判断下sizeof后的值的大小。1.什么都没有的结构体(类),C++中这个结构体是多少?struct A{};2.那么在C语言中呢?上述的结构体是多少?如果上面的例子让你拿捏不准的话,下面的例子给你一些自信:3....【阅读全文】
depthlove | 2015-04-21 11:09:18 | 阅读(1190) | 评论(0)
大端模式:字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。小端模式:与大端存储模式相反,在小端存储模式中,低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节。例如,16位宽的数0x1234在小端模式CPU内存中的存放方式(假设从地址0x4000开始存放)为:...【阅读全文】
depthlove | 2015-04-21 11:08:39 | 阅读(2190) | 评论(0)
第一个程序运行没问题。第二个会出现乱码点击(此处)折叠或打开#include#includeusing namespace std;char *g();int a=1;int b=a;void main(){&nb...【阅读全文】
【C/C++】 分配
陈小静123 | 2015-04-19 12:45:56 | 阅读(2400) | 评论(0)
五大内存分区在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。堆,就是那些由new分配的内存块,他们的释放编...【阅读全文】
小闹腾 | 2015-04-13 22:25:56 | 阅读(1430) | 评论(0)
1、在C语言的运行过程中,需要内存来存储数据。C语言使用的内存总体可以分为两类:一类是静态区,一类是动态区。2、静态数据存储区包含:只读数据区、已初始化的读写数据区、未初始化的读写数据区      动态数据存储区包含:栈内存区域、堆内存区域     3、C语言编写的程序经过编译-连接...【阅读全文】
seuqyr | 2015-04-11 12:27:39 | 阅读(780) | 评论(0)
类分为成员变量和成员函数,我们先来讨论成员变量。 一个类对象的地址就是类所包含的这一片内存空间的首地址,这个首地址也就对应具体某一个成员变量的地址。(在定义类对象的同时这些成员变量也就被定义了)我们来以一段代码说明问题: //类的定义 class K{public: K(){k = 12;} ~K(){} i...【阅读全文】
hustclf | 2015-04-10 18:53:52 | 阅读(1110) | 评论(0)
【C/C++】 c++ 内管理
seuqyr | 2015-04-10 16:11:18 | 阅读(780) | 评论(0)
1 内存管理伟大的Bill Gates 曾经失言:  640K ought to be enough for everybody — Bill Gates 1981程序员们经常编写内存管理程序,往往提心吊胆。如果不想触雷,唯一的解决办法就是发现所有潜伏的地雷并且排除它们,躲是躲不了的。本文的内容比一般教科书的要深入得多,读者需细心...【阅读全文】
kjqin | 2015-04-09 10:19:21 | 阅读(1260) | 评论(0)
一、 安装1. autoconf# wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz # tar -zxvf autoconf-2.69.tar.gz # cd autoconf-2.69# ./configure# make; make install2. automake# wget http://ftp.gnu.org/gnu/automake/automake-1.14.tar.gz# tar -zxvf automake-1.14.tar.gz # cd au...【阅读全文】