日志处理(Log Handling)

优质
小牛编辑
141浏览
2023-12-01

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! 

在实时应用程序中禁用日志

由于我们在应用程序中使用的NSLog,它将被打印在设备的日志中,并且在实时构建中打印日志是不好的。 因此,我们使用类型定义来打印日志,我们可以使用它们,如下所示。

#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