Conversation
double word more like double quad word more like just tell me the fucking size
3
0
1

@twinspin6 the only real types are u8,u16,u32,u64,i8,i16,i32,i64,f32,f64, everything else is a mental illness.

1
0
1
@twinspin6 It depends on the machine.

If you want specific sizes, you need to use stdint.h or check with sizeof().
1
0
0
@Suiseiseki it should always be the exact size in bits you want
not some bs machine specific stuff
1
0
0
@twinspin6 Most machines cannot handle arbitrary bit sizes - as their registers are of a fixed size and registers are different depending on the machine.

You would need to use a packed struct or similar to handle arbitrary bit sizes and it is quite slow to have most operations needing to hit memory, rather than being able to use registers.
1
0
0
@Suiseiseki that's why stdint exists though right? to guarantee at least a specific size in bits so your program still works in the end
1
0
0
@twinspin6 Yes, uint64_t is designed to ask for 64 bits no matter the machine - which works fine on machines with 64bit and 32bit registers.

Although, some machines have uint48_t, which is not portable.
1
0
1
@Suiseiseki what happens when you use uint48_t on 32 bit register machines
1
0
0
@twinspin6 It fails to compile on both 32bit and 64bit register machines.

Such is only really for microprocessors with odd register sizes.
1
0
1
@twinspin6 For uint64_t on 32 bit register machines, GCC is smart enough to use 2 registers.
0
0
1