delphi数据类型

学习Object pascal 语言;

以前也学过些其他语言,主要是脚本类语言如: php;php很多东西都是和C++差不多;但更加的灵活;看了delphi,才知道语言都是相通的,能够把一种语言学好,运用好,其他语言也是非常容易学的;

一.数据类型

最常用的有:integer,string(ansistring),变体类型(variant),currency(货币类型),8位无符号类型Byte,1个字节字符Char,以Null结束的字符型;

用户自定义的类型:

1.数组类型:

var 

  arr : array [0..10] of integer;

动态数组:

var

  sa : array of string;

begin

  setLength(sa,18);//需要用到setLength来分配大小

end;

2.记录类型:

Type

   myinfo = record

     age: integer;

     name: string;

     addr : string;

end;

 

使用时需要实例化

var

   info : myinfo;

begin

  info.age := 38;

  info.name:='delphiclub';

  info.addr := 'guilin';

end;

 

//也可以用with 来做

  with info do

  begin
       age := 38;
       name:= 'delphiclub';
      addr := 'guilin'; 
  end;

  end;

 

集合数据类型:

 type

  tCharSet = set of char;  //可能的值:#0-#255;

一个集合最多只能有255个元素,只有有序的类型才能跟关键字 set of 下列语句是非法的

type

  TintSet = set of integer;

  tstrSet = set of string;

使用集合:

var

  charset : TcharSet;

 begin

 charset := ['a'..'m'];

end;

 

对象也可以当做记录类型,只是它还包括了函数和过程;

type

  TChildObject = class(TParentObject)

  someVar :integer;

  procedure someProc;

end;

分类 范围 字节 备注
简单类型 序数 整数 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      
posted @ 2012-10-19 10:37  delphiclub  阅读(207)  评论(0编辑  收藏  举报