xplshn
·
2025-09-14
casting.bx
Bx
1main() {
2 extrn printf, exit;
3
4 auto a = 42;
5
6 b := int(a);
7 c := (int(a) + 1);
8
9 printf("Function-style casts: a=%d, int(a)=%d, (int(a)+1)=%d\n", a, b, c);
10
11 ptr := &a;
12 byte_ptr := (*byte)ptr;
13 int_ptr := (*int)byte_ptr;
14 value := *int_ptr;
15
16 printf("Pointer casts work: value=%d\n", value);
17
18 n1 := int8(8);
19 n2 := int16(16);
20 n3 := int32(32);
21 n4 := int64(64);
22
23 printf("n1(int8) : %d\n", n1);
24 printf("n2(int16): %d\n", n2);
25 printf("n3(int32): %d\n", n3);
26 printf("n4(int64): %d\n", n4);
27
28 exit(0);
29}