#define MARGIN (10 + 20) // MARGIN * 2 // (10 + 20) * 2 = 60
#define MAX(A,B) A > B ? A : B
int a = 3; int b = 2; int c = 1; MAX(a, b > c ? b : c) // = 2
MAX(a,b > c ? b : c); //a > b > c ? b : c ? a : b > c ? b : c //(a > (b > c ? b : c) ? a : b) > c ? b : c // 这是运算的优先级 // 带入值可以看出 //( 3 > (2 > 1 ? 2 : 1 ) ? 3 : 2) > 1 ? 2 : 1 // (3 > 2 ? 3 : 2) > 1 ? 2 : 1 // 3 > 1 ? 2 : 1
c = MAX(a++,b); // **我直接展开给你看就得了** // c = a++ > b ? a++ : b // c = 3++ > 2 ? 3++ : 2 // c = 4 // a = 5
int a = ({
int b = 10;
int c = 20;
b + c;
})
// a = 30;
int b; // 继续使用b和c当变量名也没有问题
int c;
#define __NSX_PASTE__(A,B) A##B
#if !defined(MAX)
#define __NSMAX_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__(__b,L) : __NSX_PASTE__(__a,L); })
#define MAX(A,B) __NSMAX_IMPL__(A,B,__COUNTER__)
#endif
#if !defined(MAX)
#define __NSMAX_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__(__b,L) : __NSX_PASTE__(__a,L); })
#define MAX(A,B) __NSMAX_IMPL__(A,B,__COUNTER__)
#endif
#define NSLog(format, ...) do { fprintf(stderr, "<%s : %d> %s\n", \
[[[NSString stringWithUTF8String:__FILE__] lastPathComponent] UTF8String], __LINE__, __func__); \
(NSLog)((format), ##__VA_ARGS__); \
fprintf(stderr, "-------\n"); \ } while (0)
if (100 > 99)
NSLog(@"%@",@"Fuck");
else {
}
// 展开后可得
if (100 > 99)
{ fprintf(stderr, "<%s : %d> %s\n",
[[[NSString stringWithUTF8String:__FILE__] lastPathComponent] UTF8String], __LINE__, __func__);
(NSLog)((format), ##__VA_ARGS__);
fprintf(stderr, "-------\n");};
else {
}
if (100 > 99)
do { fprintf(stderr, "<%s : %d> %s\n",
[[[NSString stringWithUTF8String:__FILE__] lastPathComponent] UTF8String], __LINE__, __func__);
(NSLog)((format), ##__VA_ARGS__);
fprintf(stderr, "-------\n");} while(0);
else {
}
- (void)say:(NSString *)code,... {
va_list args;
va_start(args, code);
NSLog(@"%@",code);
while (YES) {
NSString *string = va_arg(args, NSString *);
if (!string) {
break;
}
NSLog(@"%@",string);
}
va_end(args);
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有