Euphoria - 数据类型


存储在内存中的数据可以有多种类型。例如,一个人的年龄存储为数值,而他或她的地址存储为字母数字字符。

Euphoria 有一些标准类型,用于定义它们可能进行的操作以及每种类型的存储方法。

Euphoria 有以下四种标准数据类型 -

  • 整数
  • Atomics
  • 顺序
  • 目的

对Atomics和序列的理解是理解 Euphoria 的关键。

整数

Euphoria 整数数据类型存储数值。它们的声明和定义如下 -

integer var1, var2

var1 = 1
var2 = 100

使用整数类型声明的变量必须是数值从 -1073741824 到 +1073741823 之间的Atomics。您可以对较大的整数值(最多大约 15 位十进制数字)执行精确计算,但将它们声明为Atomics而不是整数。

Atomics

Euphoria 中的所有数据对象要么是Atomics,要么是序列。Atomics是单个数值。Atomics可以具有任何整数或双精度浮点值。Euphoria Atomics的声明和定义如下:

atom var1, var2, var3

var1 = 1000
var2 = 198.6121324234
var3 = 'E'       

Atomics的范围约为 -1e300 到 +1e300,精确到 15 位小数。单个字符是必须使用单引号输入的Atomics。例如,以下所有陈述都是合法的 -

-- Following is equivalent to the atom 66 - the ASCII code for B
char = 'B'

-- Following is equivalent to the sequence {66}
sentence = "B"

序列

序列是可以通过索引访问的数值的集合。Euphoria 中的所有数据对象要么是Atomics,要么是序列。

序列索引从 1 开始,与其他编程语言的数组索引从 0 开始不同。Euphoria 序列的声明和定义如下 -

sequence var1, var2, var3, var4

var1 = {2, 3, 5, 7, 11, 13, 17, 19}
var2 = {1, 2, {3, 3, 3}, 4, {5, {6}}}
var3 = {{"zara", "ali"}, 52389, 97.25}     
var4 = {} -- the 0 element sequence

字符串只是可以使用双引号输入的字符序列。例如,以下所有陈述都是合法的 -

word = 'word'
sentence = "ABCDEFG"

字符串可以像任何其他序列一样被操纵和操作。例如,上面的字符串完全等同于序列 -

sentence = {65, 66, 67, 68, 69, 70, 71}

您将在Euphoria - Sequences中了解有关序列的更多信息。

对象

这是 Euphoria 中的超级数据类型,可以采用任何值,包括Atomics、序列或整数。Euphoria 对象的声明和定义如下 -

object var1, var2, var3

var1 = {2, 3, 5, 7, 11, 13, 17, 19}
var2 = 100
var3 = 'E'     

对象可能具有以下值之一 -

  • 一个序列

  • 一个Atomics

  • 一个整数

  • 用作文件编号的整数

  • 字符串序列或单字符Atomics