delphi数据类型

摘要:
数据类型说明:1.有序类型:这种类型的有序变量只能在值范围的某个位置取变量,不能越界。子范围:子范围类型定义一组有序值,但子范围的有序值必须在其他有序类型中定义,索引由父类确定。Set类型的基本类型可以是Enumerated和Subrange,因此它们包含有序值。文件类型用于读取文件。变量类型变量有三种状态:未分配、Null和非Null。

1.Simple:

1.1.Ordinal:

Integer:

Integer 4byte

Cardinal un_4byte

Shortint 1byte

Smallint 2byte

Longint 4byte

Int64 8byte

Byte un_1byte

Word un_2byte

LongWord un_4byte

Character

Char

AnsiChar

WideChar

Boolean

Boolean

ByteBool

WordBool

LongBool

Enumerated

Subrange

1.2.Real

Real 8byte 15-16精度

*Real48 6byte 11-12精度

Single 4byte 7-8精度

Double 8byte 15-16精度

Extended 10byte 19-20精度

*Comp 8byte 19-20精度

Currency 8byte 19-20精度

2.String

*ShortString

AnsiString

WideString

PChar

PAnsiChar

PWideChar

3.Structured

Set

Array

Record

File

Class

Class reference

Interface

4.Pointer

无类型指针

有类型指针

5.Rrocedural

普通过程类型

对象过程类型

6.Variant

Variant

OleVariant

注:蓝色标记表示可直接使用;*号表示向后兼容,不再使用。

数据类型解释:

1.Ordinal有序类型:该类型的变量有序变量只能在取值范围中取某个位置上的变量,不能越界。

Integer基本类型是Integer和Cardinal。

Character基本类型是Char,AnsiChar和Char处理单字节,WideChar处理多字节。

Boolean基本类型是Boolean,ByteBool占用一个字节,WordBool占用两个字节,LongBool占用四个字节。

Enumerated枚举类型定义有序值的集合,索引号从0开始。

Subrange子界类型定义有序值的集合,但是子界的有序值必须在其他有序类型定义过,索引由父类决定。

2.Real实数类型:基本类型是Real。目前等同于double。声明变量一般使用Double和

Single,在过程中定义可传递任意参数时使用Extended。

3.String字符串类型:ShortString在内存中占用0..255个字节,第0字节存储字符串长度。为了避免浪费空间,可以使用String[MaxLength],占用MaxLength+1个字节。AnsiString是单字节存储,WideString是两字节存储一个字符。PChar申明以NULL结尾的字符串指针,这个字符串的字符是Char型,相当于指向一个Char串。

4.Structured构造类型:包含多个元素或者字段。Set类型的基本类型可以是Enumerated和Subrange,所以容纳的是有序值。Array分为静态数组和动态数组,动态数组需要使用SetLength动态分配空间,并且可以使用SetLength重新分配空间,已有数据会被保留。Record是多个任意元素的集合。File类型用来读取文件。

5.Pointer指针类型:分为有类型指针和无类型指针。占用四个字节。

6.Variant可变类型:Variant可存储大部分不同的类型,指针类型只能使用PVariant来存储。Variant类型变量有三种状态:Unassigned(没有值),Null(值为空)和非Null。默认是Unassigned状态。

免责声明:文章转载自《delphi数据类型》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇04 opkgPhp正则表达式替换下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

大端模式和小端模式

参考资料 维基百科:http://zh.wikipedia.org/wiki/%E5%AD%97%E8%8A%82%E5%BA%8F 百度百科:http://baike.baidu.com/link?url=J5-a6IjSYnxbQyjjkid51Zr6YivgbYZM0z2sWNBsCMbc1E3wv2ACH6HlxTjY7RGDz3qeFoTRl21...

OpenGL ES on iOS --- 统一变量(Uniform)和统一变量块(UBO)

简介 Uniform是一种从CPU中的应用向GPU中的着色器发送数据的方式,但uniform和顶点属性有些不同。 首先,uniform是全局的(Global)。全局意味着uniform变量必须在每个着色器程序对象中都是独一无二的,而且它可以被着色器程序的任意着色器在任意阶段访问。 第二,无论你把uniform值设置成什么,uniform会一直保存它们的数据...

sql server 数据类型

摘自:http://www.cnblogs.com/zhangwei595806165/archive/2012/02/23/2364746.html 1. 字符数据类型 字符数据类型包括varchar、char、nvarchar、nchar、text以及ntext。这些数据类型用于 存储字符数据。varchar和char类型的主要区别是数据填充。如果有一...

JAVA基础-栈与堆,static、final修饰符、内部类和Java内存分配

Java栈与堆 堆:顺序随意 栈:后进先出(Last-in/First-Out). Java的堆是一个运行时数据区,类的对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为...

IOS(数据库的应用)

在iPhone的开发过程中常常会用到数据库,而SQLite3是iPhone中支持的数据库。下面简单介绍一下iPhone中SQLite3数据库的用法: SQLite3简介 SQLite3是一个轻量级的数据库,完全使用C语言编写,使用简单方便。它是一个嵌入到程序进程的数据库,和其他一些数据库(MySQL,MS SQL)不同,它没有独立的进程。 1、打开数据库...

shell 脚本 常用命令

Shell 脚本常用命令  Shell脚本是Linux开发工作中常用的工具,但是我一直没有找到一个适合自己的简明扼要的HandBook。在工作过程中整理了一下,贴在这里已备查看。 1           Shell中的特殊符号 1.1           $  美元符号。用来表示变量的值。如变量NAME的值为Mike,则使用$NAME就可以得到“Mike...