`
zl4393753
  • 浏览: 340073 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

NSLog 使用

阅读更多
可能你曾经有过Windows编程的经验,通常在你调试程序的时候,如果希望看到某个中间结果,你会习惯使用MessageBox来显示中间的结果。

有了Cocoa的NSLog,你在写Cocoa程序的时候,就可以无需每次都调用NSAlert来观察中间结果了。


NSLog的定义

NSLog定义在NSObjCRuntime.h中,如下所示:

void NSLog(NSString *format, …);

基本上,NSLog很像printf,同样会在console中输出显示结果。不同的是,传递进去的格式化字符是NSString的对象,而不是chat *这种字符串指针。

示例

NSLog可以如下面的方法使用:

NSLog (@"this is a test");

NSLog (@"string is :%@", string);

NSLog (@"x=%d, y=%d", 10, 20);

但是下面的写法是不行的:

int i = 12345;

NSLog( @"%@", i );

原因是, %@需要显示对象,而int i明显不是一个对象,要想正确显示,要写成:



int i = 12345;

NSLog( @"%d", i );

格式

NSLog的格式如下所示:



%@     对象
%d, %i 整数
%u     无符整形
%f     浮点/双字
%x, %X 二进制整数
%o     八进制整数
%zu    size_t
%p     指针
%e     浮点/双字 (科学计算)
%g     浮点/双字
%s     C 字符串
%.*s   Pascal字符串
%c     字符
%C     unichar
%lld   64位长整数(long long)
%llu   无符64位长整数
%Lf    64位双字
分享到:
评论

相关推荐

    扩展NSLog实现按class的自定义NSLog内容输出

    在iOS开发中,debug时经常要用到NSLog输出内容,debug完成后又需要去掉,比较麻烦,内容也不够详细。参考网上资源,扩展NSLog并利用宏替换实现按class打开或关闭的详细的NSLog输出,可以方便使用。

    IOS NSlog处理

    然而,在项目上线后,`NSLog`的过度使用可能会导致性能问题,因为日志信息会被写入设备的控制台,并可能暴露敏感数据。因此,对于iOS上线项目中的`NSLog`处理,我们需要采取一些策略来确保应用的稳定性和安全性。 ...

    Teleport-NSLog, iOS远程日志记录将NSLog消息发送到后端服务器.zip

    Teleport-NSLog, iOS远程日志记录将NSLog消息发送到后端服务器 传送 nslog 当你的应用程序在用户的设备中运行时,传送... 在Xcode中调试时,我们使用NSLog将许多有用的消息打印到控制台。 当应用程序在用户设备中运行

    XCode用NSLog输出系统字体名称Demo

    在“XCode用NSLog输出系统字体名称Demo”中,开发者通常会遍历系统所有的字体资源,然后使用`NSLog`函数将它们的名字输出到控制台。这可以通过访问`UIFont`类的`+availableFonts`方法实现,该方法返回一个包含所有...

    iphone 开发学习基础NSLog

    在iOS开发中,Objective-C是主要的编程语言之一,尤其对于初学者来说,理解并熟练使用NSLog是非常重要的。NSLog是苹果提供的一个用于在控制台打印日志信息的工具,它在调试代码、追踪问题时起着至关重要的作用。本篇...

    Object_c模拟测试题.docx

    6. Objective-C编程实践:对于浮点数的输出,NSLog使用%f格式符,因此C选项正确。A选项和D选项会因为尝试将浮点数转换为整数而输出错误的结果。B选项表示编译错误,因为%f应该用于浮点数。 7. 数据类型转换:将...

    iOS中控制NSLog输出时机详解

    在给定的代码中,我们可以看到使用了freopen函数来控制NSLog的输出。该函数可以将输出重定向到指定的文件中,从而实现日志的保存和读取。例如,在saveDEBUGlog方法中,我们使用freopen函数将日志输出到指定的文件中...

    iphone开发学习笔记(1)--NSLog

    本篇笔记将详细介绍`NSLog`的使用和其在iPhone应用开发中的作用。 `NSLog`是Foundation框架的一部分,用于向控制台输出文本信息。它在Objective-C和Cocoa Touch环境中扮演着类似Java中`System.out.println`的角色,...

    iphone 开发学习项目创建及调试输出NSLog

    在iPhone应用开发中,使用Objective-C语言进行编程时,熟练掌握项目创建流程以及利用`NSLog`进行调试是至关重要的技能,尤其是对于初学者而言。本文将从创建一个新的Xcode项目开始,深入讲解如何使用`NSLog`来输出...

    IOS中(Xcode) DEBUG模式(RELEASE模式)控制NSLog输出,NSLog输出方式

    但是一个发布的程序,里面带有太多的NSLog输出,肯定对于App性能有所影响,这时候我们可以使用一个宏定义来处理,在开发的时候使用DEBUG模式,在发布的时候使用RELEASE模式。这样,发布的App就不会在程序内部做大量...

    nslog输出格式 iphone开发

    nslog输出格式 iphone开发 非常好用的nslog,提供各种格式的输出。

    支持记录log和替换NSLog功能

    特性:1)使用CC_LOG代替NSLog,并且提供更加详细的输出信息。使用方法和NSLog完全一致; 2)使用CC_LOG_VALUE直接打印各种值; 3)支持Log记录,支持Developer UI; 4)支持捕获Crash信息,区分普通Log和Crash Log;...

    NSLog时常用的打印格式

    NSLog时常用的打印格式,记不住的保留看看

    重定向NSLog 输出到本地案例

    使用方法: 在全局头文件中(.pch 文件) 中重新宏定义 NSLog #define NSLog(format, ...) do { \ (NSLog)((format), ##VA_ARGS); \ dispatch_async(dispatch_get_main_queue(), ^{ \ [[NSNotificationCenter ...

    Objective-C中NSLog输出格式大全

    2. `%d` 和 `%i`: 两者都是用来输出整数,但通常情况下,它们可以互换使用。在Objective-C中,整数类型包括`int`、`short`、`long`等,这些类型都可以用这两个格式输出。 3. `%u`: 这个格式用于输出无符号整数,...

    BetterNSLog:更好的 NSLog 实现

    这个简单的库(充满了预处理器的魔力)隐藏了 NSLog 并添加了一个名为 DLog 的“调试”NSLog 命令。 在你需要的地方导入BetterNSLog.h ,你就可以开始了。 这... NSLog(format,...) ...印刷: [APPNAME] ...

    通过重定向NSLog过滤WKWebView [Process] kill() returned unexpected error 1

    网上有很多关于解决WKWebView错误日志不停打印 [Process] kill() returned ...其实我们可以通过重定向NSLog,过滤掉不需要的信息,然后使用非标准错误流输出日志信息。下面是实现代码: Swift版本 #if DEBUG pr

Global site tag (gtag.js) - Google Analytics