vety-language/demo/operators.vt

64 lines
1.7 KiB
Plaintext

// 位运算符示例
let a = 5 // 二进制: 0101
let b = 3 // 二进制: 0011
// 按位与运算
let and_result = a & b // 结果: 1 (0001)
// 按位或运算
let or_result = a | b // 结果: 7 (0111)
// 按位异或运算
let xor_result = a ^ b // 结果: 6 (0110)
// 按位取反运算
let not_result = ~a // 结果: -6
// 左移运算
let shl_result = a << 1 // 结果: 10 (1010)
// 右移运算
let shr_result = a >> 1 // 结果: 2 (0010)
// 自增自减运算符
let i = 0
i++ // i = 1
i-- // i = 0
++i // i = 1
--i // i = 0
// 复合赋值运算符
let x = 10
x += 5 // x = 15
x -= 3 // x = 12
x *= 2 // x = 24
x /= 4 // x = 6
x %= 4 // x = 2
// 位运算复合赋值运算符
let y = 12 // 二进制: 1100
y &= 10 // y = 8 (1000)
y |= 5 // y = 13 (1101)
y ^= 9 // y = 4 (0100)
y <<= 2 // y = 16 (10000)
y >>= 1 // y = 8 (1000)
// 三元表达式示例
let age = 20
let canVote = age >= 18 ? "可以投票" : "不能投票"
let score = 85
let result = score >= 90 ? "优秀" : (score >= 60 ? "及格" : "不及格")
// 打印结果
print("按位与结果: " + and_result)
print("按位或结果: " + or_result)
print("按位异或结果: " + xor_result)
print("按位取反结果: " + not_result)
print("左移结果: " + shl_result)
print("右移结果: " + shr_result)
print("最终i的值: " + i)
print("最终x的值: " + x)
print("位运算复合赋值后y的值: " + y)
print("投票权: " + canVote)
print("考试结果: " + result)