A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

本帖最后由 Moebius 于 2014-7-15 17:51 编辑

C语言的pritnf()与OC中的NSLog()有什么区别? 功能感觉都一样,但是为何要在OC中另外设置一个函数来代替pritnf()呢?是不是有什么特别的地方?

7 个回复

倒序浏览
怎么会功能一样。。。至少NSLog会打印出时间信息吧,会自动换行吧,能用%@吧
回复 使用道具 举报
NSLog完全具备printf的功能,而printf只能打印纯C语言的变量,不能打印一些NSObject类型的对象
回复 使用道具 举报
NSLog打印C语言中定义的字符串时,不能打印中文字符,此时会跳过打印。
回复 使用道具 举报
1.NSLog会自己加上换行符

2.NSLog在Debug下会写到system.log中

3.NSLog会自动加上时间和进程信息.

4.NSLog支持%@去打印一个对象类型,当使用%@时,它会给对象发送消息description,所以如果你组合了一个新的类,你可以通过给自己重载description来实现打印DEBUG

回复 使用道具 举报 1 0
楼上的都说的很清楚了,NSLog大有用处
回复 使用道具 举报
NSLog默认输出是带时间、进程名、换行等其他额外信息的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马