黑马程序员------OC中NSLog与printf的区别

------- android培训、java培训、iOS培训、.Net培训、期待与您交流! ----------
NSLog和printf使用的差异
       


#import

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;
}

你可能感兴趣的:(黑马程序员------OC中NSLog与printf的区别)