NSLog的输出函数和格式符号

int a = 1987;

NSLog(@"==%d==",a); 输出十进制的整数 

NSLog(@"==%9d==",a); 输出整数9位,右对齐(数靠右)

NSLog(@"==%-9d==",a); 输出整数9位,左对齐(数靠左)

NSLog(@"==%o==",a);输出八进制数

NSLog(@"==%x==",a);输出十六进制


NSLog(@"==%ld==",a); 输出long int的整数 

NSLog(@"==%lx==",a);输出十六进制的 long int 的整数 


NSLog(@"==%f==",a); 输出小数形式浮点数

NSLog(@"==%9f==",a); 输出小数形式浮点数,占用9位

NSLog(@"==%.4f==",a); 输出小数形式浮点数,小数点后占用4位

NSLog(@"==%9.4f==",a); 输出小数形式浮点数,小数点前占用9位,小数点后占4位

NSLog(@"==%e==",a);输出指数形式的浮点数

NSLog(@"==%g==",a);以最简形式输出浮点数(看数值大小,大数值以指数形式输出,小的以小数形式输出)


NSLog(@"==%lf==",a); 输出小数形式长浮点数

NSLog(@"==%9lf==",a); 输出小数形式长浮点数,占用9位

NSLog(@"==%.4lf==",a); 输出小数形式长浮点数,小数点后占用4位

NSLog(@"==%9.4lf==",a); 输出小数形式长浮点数,小数点前占用9位,小数点后占4位

NSLog(@"==%le==",a);输出指数形式的长浮点数

NSLog(@"==%lg==",a);以最简形式输出长浮点数(看数值大小,大数值以指数形式输出,小的以小数形式输出)


NSLog(@"==%@==",a); 输出OC对象

NSLog(@"==%c==",a); 只输出一个字符

添加:如果要求格式是01,02.。。。。。这种

NSLog(@"==%02d==",a); 就是格式是2位,不满2两位为的前边补0


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Objective-C 中,可以通过重写 `NSLog` 函数来将输出内容输出到指定文件中。具体操作如下: 1. 定义一个新的 `NSLog` 函数 ```objective-c void MyNSLog(NSString *format, ...) { va_list args; va_start(args, format); NSString *logStr = [[NSString alloc] initWithFormat:format arguments:args]; va_end(args); // 将输出内容写入文件 NSString *filePath = @"文件路径"; NSFileHandle *fileHandle = [NSFileHandle fileHandleForWritingAtPath:filePath]; [fileHandle seekToEndOfFile]; [fileHandle writeData:[logStr dataUsingEncoding:NSUTF8StringEncoding]]; [fileHandle closeFile]; // 将输出内容输出到控制台 NSLog(@"%@", logStr); } ``` 在上面的代码中,首先定义了一个新的 `NSLog` 函数 `MyNSLog`。在这个函数中,首先将输入的格式化字符串格式化成一个字符串,然后将这个字符串写入到指定的文件中。接着,调用系统的 `NSLog` 函数将这个字符串输出到控制台中。 2. 重定义 `NSLog` 函数 ```objective-c #define NSLog(...) MyNSLog(__VA_ARGS__) ``` 在上面的代码中,使用 `#define` 宏定义将 `NSLog` 函数重定义为新的 `MyNSLog` 函数。 使用以上两个步骤,就可以将 `NSLog` 的输出内容同时输出到指定文件和控制台中。需要注意的是,如果文件路径不存在,则需要先创建该文件。另外,如果需要在多个文件中使用这个新的 `NSLog` 函数,可以将上面的代码写在一个公用的头文件中,然后在需要使用的文件中包含该头文件即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值