59 lines
1.2 KiB
Python
59 lines
1.2 KiB
Python
import stdio
|
|
import t, c
|
|
|
|
|
|
# ============================================================
|
|
# AugAssign 测试:+= -= *= /= %= &= |= ^= <<= >>=
|
|
# ============================================================
|
|
|
|
g_count: int = 0
|
|
|
|
|
|
def test_local() -> int:
|
|
x: int = 10
|
|
x += 5
|
|
stdio.printf("local +=: %d\n", x)
|
|
x -= 3
|
|
stdio.printf("local -=: %d\n", x)
|
|
x *= 2
|
|
stdio.printf("local *=: %d\n", x)
|
|
x /= 4
|
|
stdio.printf("local /=: %d\n", x)
|
|
x %= 7
|
|
stdio.printf("local %%=: %d\n", x)
|
|
return 0
|
|
|
|
|
|
def test_global_aug() -> int:
|
|
global g_count
|
|
g_count += 1
|
|
stdio.printf("global +=: %d\n", g_count)
|
|
g_count += 10
|
|
stdio.printf("global +=: %d\n", g_count)
|
|
g_count -= 3
|
|
stdio.printf("global -=: %d\n", g_count)
|
|
return 0
|
|
|
|
|
|
def test_bitops() -> int:
|
|
b: int = 0xFF
|
|
b &= 0x0F
|
|
stdio.printf("bit &=: %d\n", b)
|
|
b |= 0x30
|
|
stdio.printf("bit |=: %d\n", b)
|
|
b ^= 0xFF
|
|
stdio.printf("bit ^=: %d\n", b)
|
|
b = 1
|
|
b <<= 4
|
|
stdio.printf("bit <<=: %d\n", b)
|
|
b >>= 2
|
|
stdio.printf("bit >>=: %d\n", b)
|
|
return 0
|
|
|
|
|
|
def augassign_test() -> int:
|
|
test_local()
|
|
test_global_aug()
|
|
test_bitops()
|
|
return 0
|