delphi数据类型问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi数据类型问题相关的知识,希望对你有一定的参考价值。
在var定义的时候 有的时候用到string有的时候用到real 看着有点乱,怎么辨别什么时候用什么类型呢? 能举例一二?
参考技术A 在delphi中数所类型分为:数值型与字符型数值型又分整型与实型
整型顾名思义就是整数型,整数又分为有符号整型和无符号整型
实型类型就是有小数的数据类型.
当你在计算时如果计算结果可能需用小数那则用real,至于用哪种精度小数那看你要的精确度了.浮点运算是比较耗CPU的,把数据分成不同类型来提高CPU运行效率,这也是一个原因.
string就是字符串类型,如:'中国人'这就是一个字符串,顾名思义就是多个字符串起来的
char是字符类型,这与字符串是有区别的,char类型占用一个byte,也就是说char类型最多只能装一个字符,比如'a'或'b'如果你赋值的内容超出它的大小则出错.
其实不管各种数据类型到了汇编中就都变成一种类型那就是数值了.
这就是ord('a')为什么等于97的原因了.
你应该看看计算机基础知识,如数据在计算机中怎样存储,位和字节和字的概念,你就会明白了.
Delphi 数据类型列表 good
分类 | 范围 | 字节 | 备注 | |||
简单类型 | 序数 | 整数 | Integer | -2147483648 .. 2147483647 | 4 | 有符号32位 |
Cardinal | 0 .. 4294967295 | 4 | 无符号32位 | |||
Shortint | -128 .. 127 | 1 | 有符号8位 | |||
Smallint | -32768 .. 32767 | 2 | 有符号16位 | |||
Longint | -2147483648 .. 2147483647 | 4 | 有符号32位 | |||
Int64 | -263 .. 263 | 8 | 有符号64位 | |||
Byte | 0 .. 255 | 1 | 无符号8位 | |||
Word | 0 .. 65535 | 2 | 无符号16位 | |||
Longword | 0 .. 4294967295 | 4 | 无符号32位 | |||
字符 | AnsiChar(Char) | ANSI字符集 | 8位 | |||
WideChar | Unicode字符集 | 16位 | ||||
布尔 | Boolean | False < True Ord(False) = 0 Ord(True) = 1 Succ(False) = True Pred(True) = False |
1 | |||
ByteBool | False <> True Ord(False) = 0 Ord(True) <> 0 Succ(False) = True Pred(False) = True |
1 | ||||
WordBool | 2 | |||||
LongBool | 4 | |||||
枚举 | ||||||
子界 | ||||||
实数 | Real | 5.0×10-324 .. 1.7×10308 | 8 | [精度]15..16 | ||
Real48 | 2.9×10-39 .. 1.7×1038 | 6 | [精度]11..12; 向后兼容 |
|||
Single | 1.5×10-45 .. 3.4×1038 | 4 | [精度]7..8 | |||
Double | 5.0×10-324 .. 1.7×10308 | 8 | [精度]15..16 | |||
Extended | 3.6×10-4951 .. 1.1×104932 | 10 | [精度]19..20 | |||
Comp | -263 + 1 .. 263 - 1 | 8 | [精度]19..20 | |||
Currency | -922337203685477.5808 .. 922337203685477.5807 |
8 | [精度]19..20 | |||
字符串 | ShortString | 255个字符 | 2..256B | 向后兼容 | ||
AnsiString | 大约 231 个字符 | 4B..2GB | 8位(ANSI)字符 | |||
WideString | 大约 230 个字符 | 4B..2GB | 多用户服务和 多语言应用程序; 和com定义的BSTR兼容 |
|||
其他 | String String[0..255] PChar PAnsiString PWideString |
|||||
结构类型 | 集合 | Set | 最多256个元素[0..255] | |||
数组 | 静态数组 | |||||
动态数组 | ||||||
记录 | Record | |||||
文件 | File | |||||
类 | Class | |||||
类引用 | Class reference | |||||
接口 | Interface | |||||
指针类型 | 无类型指针 | Pointer | ||||
有类型指针 | 预定义类型指针 | PAnsiString PString PByteArray PCurrency PDouble PExtended PSingle PInteger POleVariant PShortString PTextBuf PVarRec PVariant PWideString PWordArray |
||||
过程类型 | 程序过程类型 | Procedural | ||||
对象过程类型 | Procedural | |||||
变体类型 | Variant | |||||
OleVariant |
http://www.cnblogs.com/del/archive/2007/12/04/982167.html
以上是关于delphi数据类型问题的主要内容,如果未能解决你的问题,请参考以下文章