运算符 返回索引
算术运算符 | 连接运算符 | 转换函数 | 数学函数 | 逻辑运算符 | |||
^ 运算符 * 运算符 / 运算符 \ 运算符 Mod 运算符 + 运算符 - 运算符 | & 运算符 + 运算符 | Asc函数 CBool函数 CByte函数 CCur函数 CDate函数 CDec函数 CDbl函数 Chr 函数 CInt 函数 CLng 函数 CSng 函数 CStr 函数 CVar 函数 CVErr 函数 Format 函数 Hex 函数 Oct 函数 Str 函数 Val 函数 | Abs 函数 Atn 函数 Cos 函数 Exp 函数 Fix 函数 Int 函数 Log 函数 Rnd 函数 Sgn 函数 Sin 函数 Sqr 函数 Tan 函数 导出的数学函数 | And 运算符 Eqv 运算符 Imp 运算符 Not 运算符 Or 运算符 Xor 运算符 | |||
数据类型概述
以下表格显示所支持的数据类型,以及存储空间大小与范围。
数据类型 | 存储空间大小 | 范围 |
Byte | 1 个字节 | 0 到 255 |
Boolean | 2 个字节 | True 或 False |
Integer | 2 个字节 | -32,768 到 32,767 |
Long (长整型) | 4 个字节 | -2,147,483,648 到 2,147,483,647 |
Single (单精度浮点型) | 4 个字节 | 负数时从 -3.402823E38 到 -1.401298E-45;正数时从 1.401298E-45 到 3.402823E38vb 字符串转数组 |
Double (双精度浮点型) | 8 个字节 | 负数时从 -1.79769313486232E308 到 -4.94065645841247E-324;正数时从4.94065645841247E-324 到 1.79769313486232E308 |
Currency (变比整型) | 8 个字节 | 从 -922,337,203,685,477.5808 到 922,337,203,685,477.5807 |
Decimal | 14 个字节 | 没有小数点时为 +/-79,228,162,514,264,337,593,543,950,335,而小数点右边有 28 位数时为 +/-7.9228162514264337593543950335;最小的非零值为 +/-0.0000000000000000000000000001 |
Date | 8 个字节 | 100 年 1 月 1 日 到 9999 年 12 月 31 日 |
Object | 4 个字节 | 任何 Object 引用 |
String (变长) | 10 字节加字符串长度 | 0 到大约 20 亿 |
String (定长) | 字符串长度 | 1 到大约 65,400 |
Variant (数字) | 16 个字节 | 任何数字值,最大可达 Double 的范围 |
Variant (字符) | 22 个字节加字符串长度 | 与变长 String 有相同的范围 |
用户自定义 (利用 Type) | 所有元素所需数目 | 每个元素的范围与它本身的数据类型的范围相同。 |
注意 任何数据类型的数组都需要 20 个字节的内存空间,加上每一数组维数占 4 个字节,再加上数据本身所占用的空间。数据所占用的内存空间可以用数据元数目乘上每个元素的大小加以计算。例如,以 4 个 2 字节之 Integer 数据元所组成的一维数组中的数据,占 8 个字节。这 8 个字节加上额外的 24 个字节,使得这个数组所需总内存空间为 32 个字节。
包含一数组的 Variant 比单独的一个数组需要多 12 个字节。
导出的数学函数
以下为非基本数学函数的列表,皆可由基本数学函数导出:
函数 | 由基本函数导出之公式 |
Secant(正割) | Sec(X) = 1 / Cos(X) |
Cosecant(余割) | Cosec(X) = 1 / Sin(X) |
Cotangent(余切) | Cotan(X) = 1 / Tan(X) |
Inverse Sine(反正弦) | Arcsin(X) = Atn(X / Sqr(-X * X + 1)) |
Inverse Cosine(反余弦) | Arccos(X) = Atn(-X / Sqr(-X * X + 1)) + 2 * Atn(1) |
Inverse Secant(反正割) | Arcsec(X) = Atn(X / Sqr(X * X - 1)) + Sgn((X) - 1) * (2 * Atn(1)) |
Inverse Cosecant(反余割) | Arccosec(X) = Atn(X / Sqr(X * X - 1)) + (Sgn(X) - 1) * (2 * Atn(1)) |
Inverse Cotangent(反余切) | Arccotan(X) = Atn(X) + 2 * Atn(1) |
Hyperbolic Sine(双曲正弦) | HSin(X) = (Exp(X) - Exp(-X)) / 2 |
Hyperbolic Cosine(双曲余弦) | HCos(X) = (Exp(X) + Exp(-X)) / 2 |
Hyperbolic Tangent(双曲正切) | HTan(X) = (Exp(X) - Exp(-X)) / (Exp(X) + Exp(-X)) |
Hyperbolic Secant(双曲正割) | HSec(X) = 2 / (Exp(X) + Exp(-X)) |
Hyperbolic Cosecant(双曲余割) | HCosec(X) = 2 / (Exp(X) - Exp(-X)) |
Hyperbolic Cotangent(双曲余切) | HCotan(X) = (Exp(X) + Exp(-X)) / (Exp(X) - Exp(-X)) |
Inverse Hyperbolic Sine(反双曲正弦) | HArcsin(X) = Log(X + Sqr(X * X + 1)) |
Inverse Hyperbolic Cosine(反双曲余弦) | HArccos(X) = Log(X + Sqr(X * X - 1)) |
Inverse Hyperbolic Tangent(反双曲正切) | HArctan(X) = Log((1 + X) / (1 - X)) / 2 |
Inverse Hyperbolic Secant(反双曲正割) | HArcsec(X) = Log((Sqr(-X * X + 1) + 1) / X) |
Inverse Hyperbolic Cosecant(反双曲余割) | HArccosec(X) = Log((Sgn(X) * Sqr(X * X + 1) + 1) / X) |
Inverse Hyperbolic Cotangent(反双曲余切) | HArccotan(X) = Log((X + 1) / (X - 1)) / 2 |
以 N 为底的对数 | LogN(X) = Log(X) / Log(N) |
运算符优先顺序
在一个表达式中进行若干操作时,每一部分都会按预先确定的顺序进行计算求解,称这个顺序为运算符的优先顺序。
在表达式中,当运算符不止一种时,要先处理算术运算符,接着处理比较运算符,然后再处理逻辑运算符。所有比较运算符的优先顺序都相同;也就是说,要按它们出现的顺序从左到右进行处理。而算术运算符和逻辑运算符则必须按下列优先顺序进行处理:
算术 | 比较 | 逻辑 |
指数运算 (^) | 相等 (=) | Not |
负数 (-) | 不等 (<>) | And |
乘法和除法 (*、 /) | 小于 (<) | Or |
整数除法 (\) | 大于 (>) | Xor |
求模运算 (Mod) | 小于或相等 (<=) | Eqv |
加法和减法 (+、 -) | 大于或相等 (>=) | Imp |
字符串连接 (&) | Like | Is |
当乘法和除法同时出现在表达式中时,每个运算都按照它们从左到右出现的顺序进行计算。当乘法和除法同时出现在表达式中时,每个运算也都按照它们从左到右出现的顺序进行计算。可以用括号改变优先顺序,强令表达式的某些部分优先运行。括号内的运算总是优先于括号外的运算。但是,在括号之内,运算符的优先顺序不变。
字符串连接运算符 (&) 不是算术运算符,但是,就其优先顺序而言,它在所有算术运算符之后,而在所有比较运算符之前。
Like 的优先顺序与所有比较运算符都相同,实际上是模式匹配运算符。
Is 运算符是对象引用的比较运算符。它并不将对象或对象的值进行比较,而只确定两个对象引用是否参照了相同的对象。
Array函数
返回一个包含数组的 Variant。
语法
Array(arglist)
所需的 arglist 参数是一个用逗号隔开的值表,这些值用于给 Variant 所包含的数组的各元素赋值。如果不提供参数,则创建一个长度为 0 的数组。
说明
用来表示数组元素的符号由变量名、圆括号以及括号中的所需元素的索引号组成。在下面的示例中,第一条语句创建一个 Variant 的变量 A。第二条语句将一个数组赋给变量 A。最后一条语句将该数组的第二个元素的值赋给另一个变量。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论