《Java、C与Objective - C编程差异与特性解析》
1. C语言相关特性
1.1 预处理指令#ifdef
在C语言编程中, #ifdef 预处理指令十分实用。以下代码展示了其用法:
#ifdef DEVELOPMENT_VERSION
NSAssert(poolSize<256,@"pool overflow"); // alert developer
#else
if (poolSize>=256)
return; // return immediately if pool overflows
#endif
若在源文件或通过构建设置定义了预处理宏 DEVELOPMENT_VERSION ,当 poolSize 变量大于或等于256时,代码会抛出断言(程序异常)。若未定义该宏,则会编译 if/return 语句。 #if 指令可以嵌套,被 #if 指令忽略的文本也会被预处理器忽略,这使得有条件地包含文件或定义其他预处理宏成为可能。此外,常见的 #if 0 … #endif 用于注释掉大量不需要或实验性的代码。
1.2 自动变量初始化
不同语言对变量初始化有不同规则:
- Java :确保所有变量在使用前被初始化为
超级会员免费看
订阅专栏 解锁全文
41

被折叠的 条评论
为什么被折叠?



