Skip to Content

基础值

这一部分覆盖语言里的全部基础值:三种变量绑定、整数与两种小数家族、布尔与字符、字符串及其插值、时间值、向量与颜色,以及显式类型转换。每一种值都给出字面量写法、可运行示例与边界行为。

变量与绑定程序通过声明把名字与值绑定。绑定声明有三种:const、val、var。
整数(Int)int 不是唯一的整数类型,它只是整数字面量的默认类型。MushScript 的整数按位宽分为以下几档:
浮点(Float)带小数点的字面量属于浮点类型(IEEE 754)。浮点按位宽三档:f16(半精度)、f32(单精度,默认)、f64(双精度)。计算速度快,是图形、游戏、科学计算的主力;需要精确十进制的场景用十进制浮点。
十进制浮点(Decimal)decimal 家族按十进制计算(IEEE 754-2008 decimal):十进制里写得清的数(0.1、1.10 这类),在它这里是精确的。需要精确计算的场景用它;图形与物理用浮点。
布尔(Bool)bool 只有两个值,打印出来是 True 和 False(大写开头)。
字符(Char)char 是一个扩展字形簇(Extended Grapheme Cluster),写在单引号里。一个英文字母是一个 char,一个汉字是一个 char,一个 emoji、一对组合字符组成的字,也各是一个 char。
字符串(String)字符串写在双引号里,是 UTF-8 文本。它的完整形态有四种,见下表:
字符串插值(Interpolation)$ 开头的字符串支持插值:花括号孔里的表达式求值后转成文本,拼进字符串。孔里不限于变量,算式、函数调用都行。
时间值(Duration)数字后面直接跟时间单位,就是一个时间值(Duration)。单位五种:us、ms、s、min、hr,大小写不敏感,数字可以带小数(2.0s 合法)。
向量与颜色(Vector)向量与颜色是内建七型族:vec2 / vec3 / vec4(float 分量)、vec2i / vec3i / vec4i(int 分量)、color(rgba 四个 float 分量,约定 0..1 域,运行时不钳制)。
类型转换MushScript 中,有多种类型转换的方法。
最后更新于 2026年10月10日