1: include "std"; 2: 3: // radix 4: { 5: val i1 = 999; // decimal 6: val i2 = 0b1111; // binary 7: val i3 = 0o7777; // octal 8: val i4 = 0d9999; // decimal 9: val i5 = 0xF1_F2; // hex 10: }; 11: 12: // underscores 13: { 14: val i1 = 123_456; 15: val i2 = 0x_FF_FFu; 16: }; 17: 18: // normal signed integers 19: { 20: val i1 : tiny = 1t; 21: val i2 : short = 1s; 22: val i3 : int = 1; // default 23: val i4 : int = 1i; 24: val i5 : long = 1l; 25: val i6 : vlong = 1ll; 26: }; 27: 28: // normal unsigned integers 29: { 30: val i1 : utiny = 1tu; 31: val i2 : utiny = 1ut; // u may be first or last 32: val i3 : ushort = 1su; 33: val i4 : uint = 1u; // default 34: val i5 : uint = 1iu; 35: val i6 : ulong = 1lu; 36: val i7 : uvlong = 1vu; 37: val i8 : uvlong = 1llu; // alternate 38: }; 39: 40: // exact signed integers 41: { 42: val i1 : int8 = 1i8; 43: val i2 : int16 = 1i16; 44: val i3 : int32 = 1i32; 45: val i4 : int64 = 1i64; 46: }; 47: 48: // exact unsigned integers 49: { 50: val i1 : uint8 = 1u8; // 1iu8 not allowed 51: val i2 : uint16 = 1u16; 52: val i3 : uint32 = 1u32; 53: val i4 : uint64 = 1u64; 54: }; 55: 56: // floats obey C99 rules, except we allow underscores 57: { 58: val x1 : float = 2.2f; 59: val x2 : double = 2.2; 60: val x3 : ldouble = 2.2l; 61: val x4 : double = 22_345.78; 62: // val x5 : float = 0xFFFF.FFp4f; // doesn't work on g++ 2.95.3 63: val x6 : double = 2.2e4; 64: val x7 : float = 2.2e4f; 65: }; 66: