Если вы заботитесь о размерах в битах, вы должны использовать
#include <stdint.h>
int32_t n;
и друзья. Это работает и для C ++.
64-битные числа на 32-битных машинах реализованы так, как вы думаете,
на 4 дополнительных байта. Поэтому вы можете реализовать свой собственный 64-битный
Тип данных, делая что-то вроде этого:
struct my_64bit_integer {
uint32_t low;
uint32_t high;
};
Вы, конечно, должны самостоятельно реализовать математические операторы.
В stdint.h есть int64_t, который поставляется с моей версией GCC,
и в Microsoft Visual C ++ у вас также есть тип __int64.