C或Cpp在不同位数机器的兼容问题

问题

编写的程序必须在两台机器上运行,一个机器的缺省整型为16位,一个机器的缺省整型为32位。而这两台机器的长整型长度分别为32位和64位。要让定义的变量在任何一台机器上的长度都合适的话,怎么解决?

解决方案

创建一个头文件int_sizes.h。这个文件包含:

1
2
3
4
5
6
7
8
9
#ifdef MACHINE_32
typedef signed char int8;
typedef short int int16;
typedef int int32;
#elif MACHINE_16
typedef signed char int8;
typedef int int16;
typedef long int int32;
#endif
本文结束感谢您的阅读
感谢打赏,继续前行!