以下的記錄(結構)變數在記憶體占( )位元组?
type
a = packed record
v1: Byte;
v2: Word;
v3: string[8];
v4: Double;
v5: string;
v6: TForm;
end;
type
a = packed record
v1: Byte;
v2: Word;
v3: string[8];
v4: Double;
v5: string;
v6: TForm;
end;
解决方案 »
- Image有没有属性直接把它的背景改为colorbox的颜色?
- 非模态窗体出现异常资源怎么释放
- string类型的字符串的结束符是什么?
- 为什么我用msagent做出来的东西,调用speak()没有声音出来?msagent.exe,Lernout & Hauspie TruVoice Text-to-Speech Engine已安装。
- 有关socket编程,我的程序为什么被告知"error connect to 10061?"?
- 高分求解,函数出错!高手救命!
- delphi 需求如下:查询各个表中的数据列的数据类型,除int外,所有数据都要通过加密代码加密,代码写到如何读取类型所对应的列值时
- 请教关于自动化服务器调用的简单问题。谢谢
- 灌水:请问,哪位知道大富翁怎么了?
- DELPHI 对数据库的操作如何进行 ?
- 100分求教:dbgrideh多层表头时的表头颜色问题
- 趣味题:考考你的Delphi基础
注意 string[8]长度不是8,是9
word 2
string[8] 9
double 8
string 4
TForm 4
和语言有什么关系,他定义的时候就加了关键字packed , C++里加上#pragma pack(1)
string[0]表示字符串元素个数,这个是pascal集成过来的。当然只能用于shortstring
会压缩吧
如果不用就会对齐
因为用前者的话,大小问题还真不好说,按照各位大大的说法,他占位4个字节,
那么就是说他只是一个指针,或者是一个引用了?那请大家考虑这个情况: 如果我们要把一个包含string的record,读进一个流中aStream: TMemoryStream;
gs: TMyRecord;aStream.Write(gs, SizeOf(TMyRecord));会出现什么情况?????