GNU-C MAX宏写法
来源:互联网 发布:mac上怎么玩英雄联盟 编辑:程序博客网 时间:2024/05/18 21:40
#define MAX(x,y) ({ \ typeof(x) _x=(x);typeof(y) _y=(y); \ &_x==&_y; \ _x>_y?_x:_y; \})
不过以上写法有一个潜在问题,当使用MAX(_y, _x)是;会被替换成如下:
({({ typeof(_y) _x=(_y);typeof(_x) _y=(_x); &_x==&_y; _x>_y?_x:_y; });})
显然,这不是想要的结果,更安全的版本如下:
#define MAX(x,y) ({ \ typeof(x) _##x=(x); typeof(y) _##y=(y); \ &_##x==&_##y; \ _##x>_##y?_##x:_##y; \})
0 0
- GNU-C MAX宏写法
- Max Script|加密写法
- GNU C
- GNU C
- GNU C
- GNU C用宏实现lambda表达式
- GNU C语言 宏定义 #args ##args
- GNU C ANSI C
- GNU C Compiler
- Learning GNU C
- The GNU C Library
- GNU C: __attribute__
- GNU C __attribute__ 精解
- Using GNU C __attribute__
- GNU C扩展
- GNU C扩展(一)
- GNU C扩展(一)
- GNU C __attribute__ 机制
- ch4_3_5利用radon函数和iradon函数构造一个简单图像的投影并重建图像.m
- 剑指offer 面试题17—合并两个排序的链表
- 最大堆 最小堆 poj2442 STL堆的使用
- ACDREAM 03D ACdream王国的花店(贪心专场)
- day18/DateDemo.java
- GNU-C MAX宏写法
- day18/MathDemo1.java
- first memory
- ch5_1_1 线性变换的matlab源程序:.m
- day18/MathDemo2.java
- 机器学习与数据挖掘-logistic回归及手写识别实例的实现
- JAVA学习第7天(3)I/O(一)
- day18/MathDemo3.java
- iOS开发中@property的属性weak nonatomic strong readonly等介绍