编译器为数据分配空间

转载 2004年06月23日 09:09:00

 

一般地,可以通过下面的方法改变缺省的对界条件:
  ? 使用伪指令#pragma pack ([n])
  #pragma pack ([n])伪指令允许你选择编译器为数据分配空间所采取的对界策略。
例如,在使用了#pragma pack (1)伪指令后,test结构各成员的空间分配情况就是按照一个字节对齐了,格式如下:
#pragma pack(push) //保存对齐状态
#pragma pack(1)
//定义你的结构
//…………
#pragma pack(pop)
版主点评:
对齐状态一直是初学者困惑的问题,希望此文能有所帮助

【C++ Primer每日一刷之六】数组

引言   C++ 语言提供了两种类似于vector 和迭代器类型的低级复合类型——数组和指针。与vector 类型相似,数组也可以保存某种类型的一组对象;而它们的区别在于,数组的长度是固定的。数组...
  • poem_of_sunshine
  • poem_of_sunshine
  • 2014年08月26日 11:41
  • 875

对“C++中何时对变量分配存储空间”的思考

对“C++中何时对变量分配存储空间”的思考一、问题的引入一直被“C++中变量的存储空间何时分配”困扰。在Visual studio2010中跑了一段代码,通过观察“监视窗口”中变量地址的变化和“内存窗...
  • u014633283
  • u014633283
  • 2015年09月25日 09:37
  • 1004

定义一个结构体指针需要分配存储空间?

前言 问题的来源于在学数据结构的时候,C++的语法和C语言的语法竟然不一样。 1.首先函数的参数有两种传递方式,一个是值传递,一个是地址传递。当指针作为参数传递的时候,即为地址传递,但C++写的时...
  • dreamzuora
  • dreamzuora
  • 2017年01月12日 13:43
  • 3140

C的编译器对内存空间的分配

一、预备知识—程序的内存分配  一个由c/C++编译的程序占用的内存分为以下几个部分  1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构...
  • prettyshuang
  • prettyshuang
  • 2015年05月05日 14:50
  • 1346

关于栈和堆中分配空间小结

  1.申请方式             stack:                       由系统自动分配。     例如,声明在函数中一个局部变量     int     b;     系统...
  • lisiyong
  • lisiyong
  • 2007年04月04日 22:41
  • 5113

c/c++中怎样为指向指针的指针分配空间

int **p=(int**)malloc(sizeof(int*)*3);     for(int i=0;i     {       *(p+i)=(int *)malloc(sizeof(...
  • zhangyulin54321
  • zhangyulin54321
  • 2012年08月24日 20:33
  • 2724

ubuntu 为用户分配磁盘空间

 通过前面设置vsftpd和apache2,已经可以实现每个用户享用单独的FTP空间和WEB空间。为了控制他们使用服务器的空间,我们还得为每个用户分配磁盘空间启用 quota一开始以为这个命令是可以直...
  • hanxin1987216
  • hanxin1987216
  • 2008年08月25日 13:10
  • 3888

动态分配数组空间【转载】

 1.变长一维数组  这里说的变长数组是指在编译时不能确定数组长度,程序在运行时需要动态分配内存空间的数组。实现变长数组最简单的是变长一维数组,你可以这样做: //文件名: array01.cpp...
  • Fly_Sky520
  • Fly_Sky520
  • 2010年08月11日 17:01
  • 4727

文件管理-外存分配方式

1、外存分配方法 ---- 目前,常用的外存分配方法有连续分配、链接分配和索引分配三种。 ---- 通常,在一个系统中,仅采用其中的一种方法来为文件分配外存空间。 文件的物理结构直接与外存分配方式有关...
  • dongyanxia1000
  • dongyanxia1000
  • 2016年09月06日 10:30
  • 966

oracle为表分配空间建索引以及分配索引的空间

create table JZCD_INPUTFILE_RECORD ( ID NUMBER, INPUTFILE_NAME varchar2(50), INSURANCEAPPLICATIO...
  • ld513508088
  • ld513508088
  • 2013年05月08日 16:34
  • 497
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:编译器为数据分配空间
举报原因:
原因补充:

(最多只允许输入30个字)