vety-language/doc/01_basic_syntax.md

2.3 KiB
Raw Permalink Blame History

Vety语言基础语法

1. 变量声明

Vety语言使用let关键字声明变量,使用const关键字声明常量。

// 变量声明
let name: string = "Vety"
let age: i32 = 1

// 常量声明
const PI: f64 = 3.14159

2. 基本数据类型

2.1 整数类型

Vety提供了有符号和无符号整数类型

  • 有符号整数:

    • i8: 8位有符号整数 (-128 到 127)
    • i16: 16位有符号整数 (-32,768 到 32,767)
    • i32: 32位有符号整数 (-2,147,483,648 到 2,147,483,647)
    • i64: 64位有符号整数
  • 无符号整数:

    • u8: 8位无符号整数 (0 到 255)
    • u16: 16位无符号整数 (0 到 65,535)
    • u32: 32位无符号整数 (0 到 4,294,967,295)
    • u64: 64位无符号整数
let age: i32 = 25
let distance: u64 = 1000000

2.2 浮点数类型

  • f32: 32位浮点数
  • f64: 64位浮点数
let pi: f32 = 3.14159
let e: f64 = 2.71828

2.3 布尔类型

bool类型表示布尔值,可以是truefalse

let is_valid: bool = true
let has_error: bool = false

2.4 字符串类型

string类型用于表示文本数据。字符串使用双引号(")包围。

let message: string = "Hello, Vety!"
let name: string = "John"

字符串支持转义字符:

  • \n: 换行
  • \t: 制表符
  • \r: 回车
  • \": 双引号
  • \\: 反斜杠

2.5 void类型

void类型表示没有返回值的函数的返回类型。

func print_message(): void {
    // 函数体
}

3. 类型推断

Vety支持类型推断当变量的类型可以从初始值推断出来时可以省略类型注解

let name = "Vety"    // 推断为string类型
let age = 25        // 推断为i32类型
let is_valid = true // 推断为bool类型

4. 基本运算符

4.1 算术运算符

  • +: 加法
  • -: 减法
  • *: 乘法
  • /: 除法
  • %: 取模

4.2 比较运算符

  • ==: 等于
  • !=: 不等于
  • <: 小于
  • >: 大于
  • <=: 小于等于
  • >=: 大于等于

4.3 逻辑运算符

  • &&: 逻辑与
  • ||: 逻辑或
  • !: 逻辑非

4.4 位运算符

  • &: 按位与
  • |: 按位或
  • ^: 按位异或
  • ~: 按位取反

5. 注释

Vety支持两种注释方式

// 单行注释

/*
多行注释
可以跨越多行
*/