NSLog和printf使用的差异
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
// insert code here...
//NSLog和printf使用的差异
//1、NSLog 会自动换行 而printf不会自动换行
//2、NSLog 会自动输出时间等项目信息,printf不会输出调试信息
//3、NSLog 函数的参数是一个NSString 对象
// printf是一个字符串常量指针
NSLog(@"Hello, World!");
printf("Hello, World!\n");
//2、NSLog格式化输出的问题
int a = 5;
float f1 = 2.3f;
double d1 = 3.14;
char ch = 'X';
char *str="张三丰";
//如果能够运行,说明OC向下兼容C
printf("%d,%.2f,%.2f,%c\n",a,f1,d1,ch);
printf("%s\n",str);
//NSLog格式化输出
NSLog(@"%d,%.2f,%.2f,%c",a,f1,d1,ch);
NSLog(@"---->%s",str); //不能这么写
//OC中自己特有的字符串表示方法
//用%@输出字符串
NSString *str1 = @"张三丰";
NSLog(@"%@",str1);
//使用printf能够打印str1?
//不能,NSString 是OC特有的,C不支持
printf("===>%@\n",str1);
}
return 0;
}
|
|