黑马程序员技术交流社区

标题: NSLog的输出 [打印本页]

作者: Eil.tea    时间: 2015-8-1 00:04
标题: NSLog的输出

请问个问题,视频里不是说,NSLog不能实现格式化字符串的输出么,为什么这里输出了。。。。。

作者: wowthe1st    时间: 2015-8-1 00:15
。。。可以啊,视频也没看说不能格式化输出;
NSLog跟printf差不多,只是第一个参数只接收OC字符串
作者: Eil.tea    时间: 2015-8-1 00:16
wowthe1st 发表于 2015-8-1 00:15
。。。可以啊,视频也没看说不能格式化输出;
NSLog跟printf差不多,只是第一个参数只接收OC字符串 ...

NSLog函数的使用方法,16分钟的时候,老师执行的代码没输出结果。
作者: Anne_lov    时间: 2015-8-1 09:41
我学到现在也没有遇见这个问题啊,是不是你理解错了呢。要不你发一下代码?
作者: Eil.tea    时间: 2015-8-1 11:10
Anne_lov 发表于 2015-8-1 09:41
我学到现在也没有遇见这个问题啊,是不是你理解错了呢。要不你发一下代码? ...

解决了,NSLog可以打印非汉字字符串,带中文的无法打印。
作者: alanwangke213    时间: 2015-8-1 14:15
NSLog(@"%d,%f",a,b);  这样属于格式化输出
作者: Eil.tea    时间: 2015-8-1 14:27
alanwangke213 发表于 2015-8-1 14:15
NSLog(@"%d,%f",a,b);  这样属于格式化输出

我知道,char *p="Hello,World!"; NSLog(@"%s",p);输出是正常的,你可以试试,只是字符串带中文的时候无法输出。
作者: alanwangke213    时间: 2015-8-1 14:34
Eil.tea 发表于 2015-8-1 14:27
我知道,char *p="Hello,World!"; NSLog(@"%s",p);输出是正常的,你可以试试,只是字符串带中文的时候无 ...

用 nsstring 吧,不管带不带中文都可以输出。用%@来输出字符串
NSString *a =@"Alan我的";
        NSLog(@"%@",a);


作者: Eil.tea    时间: 2015-8-1 15:48
alanwangke213 发表于 2015-8-1 14:34
用 nsstring 吧,不管带不带中文都可以输出。用%@来输出字符串NSString *a =@"Alan我的";        NSLog( ...

不是用什么的问题,只是在讨论一些特殊性。
作者: alanwangke213    时间: 2015-8-1 17:35
Eil.tea 发表于 2015-8-1 15:48
不是用什么的问题,只是在讨论一些特殊性。

有汉字是不行的,因为,char * 类型是把汉字当3个字节来存储,而NSString是当做1个字节来存储的,存储方式不一样,故输出存在问题。
作者: 刘唐飞    时间: 2015-8-2 00:32
可以打印中英混合吧




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2