可能你曾经有过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位双字
分享到:
相关推荐
日志LLog替代了NSLog。 它具有与NSLog相同的格式和语法,但功能更强大。...自定义配色方案您可以通过更改每个宏的值来使用首选的配色方案。 #define _LLog_INFO_FG "fg255,255,255;"#define _LLog_INFO_B
底部弹出alertsheet,简单易用 NiceAlertSheet *alertSheet = [[NiceAlertSheet alloc] ... NSLog(@"我选择了男"); } break; case 1: { NSLog(@"我选择了女"); } break; default: break; } };
文章地址:https://blog.csdn.net/z929118967/article/details/125207599... 1. DEBUG 宏区分调试模式和发布模式进行特殊处理 2. Objective-C's boxing capability (`装箱`快速构造数字对象) 3. benchmarking的时间测量
在iOS开发中,debug时经常要用到NSLog输出内容,debug完成后又需要去掉,比较麻烦,内容也不够详细。参考网上资源,扩展NSLog并利用宏替换实现按class打开或关闭的详细的NSLog输出,可以方便使用。
iphone 开发学习基础NSLog,初学者使用。
Teleport-NSLog, iOS远程日志记录将NSLog消息发送到后端服务器 传送 nslog 当你的应用程序在用户的设备中运行时,传送... 在Xcode中调试时,我们使用NSLog将许多有用的消息打印到控制台。 当应用程序在用户设备中运行
IOS上线项目NSLog处理
使用方法: 在全局头文件中(.pch 文件) 中重新宏定义 NSLog #define NSLog(format, ...) do { \ (NSLog)((format), ##VA_ARGS); \ dispatch_async(dispatch_get_main_queue(), ^{ \ [[NSNotificationCenter ...
XCode用NSLog输出系统字体名称!不知道系统都有那些字体的!可以参照此Demo
这个简单的库(充满了预处理器的魔力)隐藏了 NSLog 并添加了一个名为 DLog 的“调试”NSLog 命令。 在你需要的地方导入BetterNSLog.h ,你就可以开始了。 这... NSLog(format,...) ...印刷: [APPNAME] ...
iphone 开发学习项目创建及调试输出NSLog,初学者
使用方法: AS_Sheet *a = [[AS_Sheet alloc] initWithFrame:self.view.bounds titleArr:@[@"从手机相册选择", @"拍照", @"小视频"]]; __weak typeof(a) weakA = a; a.Click = ^(NSInteger clickIndex) { ...
特性:1)使用CC_LOG代替NSLog,并且提供更加详细的输出信息。使用方法和NSLog完全一致; 2)使用CC_LOG_VALUE直接打印各种值; 3)支持Log记录,支持Developer UI; 4)支持捕获Crash信息,区分普通Log和Crash Log;...
NSLog(@"没有网络"); } break; case NetWorkSatusType_WiFi:{ self.currentNetWorkStatus.text = @"当前连接是WiFi"; NSLog(@" current net is wifi"); } break; case NetWorkSatusType_2G:{ ...
nslog输出格式 iphone开发 非常好用的nslog,提供各种格式的输出。
LCUserDefaults 使用 LEVEL-DB。 LevelDB、TreeDB、SQLite3性能测试: : 例子 NSLog(@"Will write '123' to db. (Path : %@)",LCUserDefaults.DB.path); LCUserDefaults.DB[@"TEST_KEY"] = @"123"; // or [...
NSLog时常用的打印格式,记不住的保留看看
NSLog(@"selected=东方不败;"); break; case 1: NSLog(@"selected=步惊云;"); break; case 2: NSLog(@"selected=女娲大帝;"); break; default: break; } }]; pd.backgroundColor=...
iphone开发学习笔记(1)--NSLog
但是一个发布的程序,里面带有太多的NSLog输出,肯定对于App性能有所影响,这时候我们可以使用一个宏定义来处理,在开发的时候使用DEBUG模式,在发布的时候使用RELEASE模式。这样,发布的App就不会在程序内部做大量...