博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS之C的宏定义
阅读量:6005 次
发布时间:2019-06-20

本文共 717 字,大约阅读时间需要 2 分钟。

hot3.png

苹果实现的MIN(A,B)求最小值方法

//CLANG MIN#define __NSX_PASTE__(A,B) A##B#define MIN(A,B) __NSMIN_IMPL__(A,B,__COUNTER__)#define __NSMIN_IMPL__(A,B,L) ({ __typeof__(A) __NSX_PASTE__(__a,L) = (A); \                                                 __typeof__(B) __NSX_PASTE__(__b,L) = (B); \                                                 (__NSX_PASTE__(__a,L) < __NSX_PASTE__(__b,L)) ? __NSX_PASTE__(__a,L) : __NSX_PASTE__(__b,L); })

参照MIN写法的SQUARE(A)求平方实现

#define SQUARE(A) __NSSQUARE_IMPL__(A,__COUNTER__)#define __NSSQUARE_IMPL__(A,L) ({__typeof__(A) __NSX_PASTE__(__a,L) = (A);\                                                    __NSX_PASTE__(__a,L) * __NSX_PASTE__(__a,L)})

转载于:https://my.oschina.net/u/1993252/blog/838200

你可能感兴趣的文章
织梦如何实现二级栏目导航的仿制
查看>>
网上购物系统(Task010)——FormView编辑更新商品详细信息
查看>>
Struts2 技术全总结 (正在更新)
查看>>
PowerShell_零基础自学课程_5_自定义PowerShell环境及Powershell中的基本概念
查看>>
Bzoj 2252: [2010Beijing wc]矩阵距离 广搜
查看>>
《编程之美》——寻找发帖“水王”学习与扩展 转surymj博客
查看>>
Linux 虚拟机VMware安装失败,提示没有选择磁盘
查看>>
LeetCode-Permutations
查看>>
C#整数三种强制类型转换int、Convert.ToInt32()、int.Parse()的区别
查看>>
css 禁止选中文本
查看>>
bzoj2165
查看>>
tomcat 配置首页
查看>>
算术运算表达式正则及分析
查看>>
Oracle 12c 多租户 手工创建 pdb 与 手工删除 pdb
查看>>
shell初涉
查看>>
[浪子学编程][MS Enterprise Library]ObjectBuilder之创建策略祥解(二)
查看>>
PowerDesigner中NAME和COMMENT的互相转换,需要执行语句
查看>>
如何用CRegKey类来操作注册表
查看>>
图片裁剪 PhotoCropper
查看>>
UML类图
查看>>