如何使用C++与宏定义(macro)写出一个完全跨平台程序(1)(size_type类型的定义)

假定电脑系统只是Windows/Mac OS/Linux好了。

#ifdef _linux_
#ifdef __x86_64__
typedef long long unsigned int size_type;
#elif __i386__
typedef long unsigned int size_type;
#endif
#elif _WIN64||_WIN32||_WIN16||_WIN8
#ifdef _WIN64
typedef long long unsigned int size_type;
#elif _WIN32
typedef long unsigned int size_type;
#elif _WIN16
typedef short unsigned int size_type;
#else
typedef char unsigned size_type;
#endif
#elif __APPLE__
#ifdef __LP64__
typedef long long unsigned int size_type;
#else
typedef long unsigned int size_type;
#endif
#endif

这只是一个启发。
跨平台时,要注意系统位数,至少考虑到32位系统与64位系统。
Windows系统的话,可以去考虑考虑那些“老爷机”(16位,甚至8位)
一个跨平台程序,除了使用C++标准库,还要对宏定义的使用十分娴熟。
这才叫写跨平台程序的老手。
(反正程序错了又没关系,哈哈哈!又不是要我这样的蒟蒻小白写那种高级程序猿写的跨平台代码。再说了,他们也不是分Windows版本、Linux版本与Mac OS版本软件的吗?)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值