zig/test/cases/cast.zig

22 lines
500 B
Zig
Raw Normal View History

2017-01-05 16:57:48 +08:00
const assert = @import("std").debug.assert;
2016-12-22 14:42:30 +08:00
test "intToPtrCast" {
2017-01-05 16:57:48 +08:00
const x = isize(13);
const y = (&u8)(x);
const z = usize(y);
assert(z == 13);
2016-12-22 14:42:30 +08:00
}
test "numLitIntToPtrCast" {
const vga_mem = (&u16)(0xB8000);
assert(usize(vga_mem) == 0xB8000);
}
test "pointerReinterpretConstFloatToInt" {
const float: f64 = 5.99999999999994648725e-01;
const float_ptr = &float;
const int_ptr = (&i32)(float_ptr);
const int_val = *int_ptr;
assert(int_val == 858993411);
}