- 基本 Objective-C
- Objective-C - 主页
- Objective-C - 概述
- Objective-C - 环境设置
- Objective-C - 程序结构
- Objective-C - 基本语法
- Objective-C - 数据类型
- Objective-C - 变量
- Objective-C - 常量
- Objective-C - 运算符
- Objective-C - 循环
- Objective-C - 决策
- Objective-C - 函数
- Objective-C - 块
- Objective-C - 数字
- Objective-C - 数组
- Objective-C - 指针
- Objective-C - 字符串
- Objective-C - 结构
- Objective-C - 预处理器
- Objective-C - Typedef
- Objective-C - 类型转换
- Objective-C - 日志处理
- Objective-C - 错误处理
- 命令行参数
- 高级 Objective-C
- Objective-C - 类和对象
- Objective-C - 继承
- Objective-C - 多态性
- Objective-C - 数据封装
- Objective-C - 类别
- Objective-C - 摆姿势
- Objective-C - 扩展
- Objective-C - 协议
- Objective-C - 动态绑定
- Objective-C - 复合对象
- Obj-C - 基础框架
- Objective-C - 快速枚举
- Obj-C - 内存管理
- Objective-C 有用资源
- Objective-C - 快速指南
- Objective-C - 有用的资源
- Objective-C - 讨论
Objective-C 日志处理
NSLog方法
为了打印日志,我们使用 Objective-C 编程语言中的 NSLog 方法,我们在 Hello World 示例中就使用过该方法。
让我们看一个简单的代码,它将打印“Hello World”一词 -
#import <Foundation/Foundation.h> int main() { NSLog(@"Hello, World! \n"); return 0; }
现在,当我们编译并运行该程序时,我们将得到以下结果。
2013-09-16 00:32:50.888 demo[16669] Hello, World!
禁用实时应用程序中的日志
由于我们在应用程序中使用 NSLogs,它将打印在设备的日志中,并且在实时构建中打印日志并不好。因此,我们使用类型定义来打印日志,并且可以如下所示使用它们。
#import <Foundation/Foundation.h> #if DEBUG == 0 #define DebugLog(...) #elif DEBUG == 1 #define DebugLog(...) NSLog(__VA_ARGS__) #endif int main() { DebugLog(@"Debug log, our custom addition gets \ printed during debug only" ); NSLog(@"NSLog gets printed always" ); return 0; }
现在,当我们在调试模式下编译并运行程序时,我们将得到以下结果。
2013-09-11 02:47:07.723 demo[618] Debug log, our custom addition gets printed during debug only 2013-09-11 02:47:07.723 demo[618] NSLog gets printed always
现在,当我们在发布模式下编译并运行程序时,我们将得到以下结果。
2013-09-11 02:47:45.248 demo[3158] NSLog gets printed always