procedure tform1.button1click(sender: tobject);
begin
memo1.clear;
memo1.lines.add('char---' + inttostr(sizeof(char)));
memo1.lines.add('ansichar---' + inttostr(sizeof(ansichar)));
memo1.lines.add('byte---' + inttostr(sizeof(byte)));
memo1.lines.add('word---' + inttostr(sizeof(word)));
memo1.lines.add('dword---' + inttostr(sizeof(dword)));
memo1.lines.add('cardinal---' + inttostr(sizeof(cardinal)));
end;
結果如下:
char---2
ansichar---1
byte---1
word---2
dword---4
cardinal---4
老版本delphi char是指ansichar; string是指ansistring.
新版本delphi char是指widechar;string是指unicodestring.
老版本char,佔乙個位元組的記憶體。
新版本char,佔二個字的記憶體。
byte,word,dword,cardinal所佔記憶體空間大小新、老版本都一樣。
關鍵是char,這是造成許多原delphi7下執行正常的函式在delphi xe及以上版本上執行不正常甚至報錯的主要原因。究其原因就是
所佔記憶體大小不同,有些快取定義成array[0..***x] of char, 分配記憶體空間大小size的時候要注意了。
Delphi資料型別
資料型別 1 常用型別 shortint char byte byte,unsigned short smallint short word unsigned short real48 6位元組浮點數 integer,longint int,long cardinal,longword dword ...
基本資料型別 引用資料型別
一 基本資料型別 基本資料型別 number string boolean null undefined symbol es6 基本資料型別是指存放在棧中的簡單資料段,資料大小確定,記憶體空間大小可以分配,它們是直接按值存放的,所以可以直接按值訪問。二 引用資料型別 引用資料型別 object 在j...
Delphi 資料型別列表
delphi 資料型別列表 分類 範圍位元組 備註簡單型別 序數整數 integer 2147483648 2147483647 4有符號32位 cardinal 0 4294967295 4無符號32位 shortint 128 127 1有符號8位 allint 32768 32767 2有符號...