LINUX C语言 宏定义

LINUX C语言 宏定义,第1张

如果直接传整型数字进去默认应该是int吧

所以展开应该是

int _a = (2)

int _b = (3)

_a>_b?_a:_b

如果在使用宏的时候, a和b的类型是自己定义的类型 例如:

salary a

salary b

现在要调用宏来比较他俩的大小

salary n

n = max(a,b)<==>(salary _a = (a) salary _b = (b) _a>_b?_a:_b)

这样的求最大数的宏是目前最安全的写法

没有这类约定俗成的宏定义,因为Linux运行在很多不同的处理器以及平台上,这包括八位、十六位、三十二位、六十四位的嵌入式等平台,而理所当然地也要迎合不同平台的硬件指令集情况,在这种情况下,自然不可能有约定俗成的宏定义,正如楼上所说的,Linux更注重可移植性,所以这些东西,还是根据自己的需求来定义吧


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/7681475.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-08
下一篇 2023-04-08

发表评论

登录后才能评论

评论列表(0条)

保存