iPhone:格式化字符串的问题(目标C)

Dev*_*ted 4 string iphone objective-c formatted

我需要帮助.为什么这不起作用:

NSProcessInfo *process = [NSProcessInfo processInfo];
NSString *processName = [process processName];
int processId = [process processIdentifier];
NSString *processString = [NSString stringWithFormat:@"Process Name: @% Process ID: %f", processName, processId];
NSLog(processString);
Run Code Online (Sandbox Code Playgroud)

但这样做:

NSLog(@"Process Name: %@ Process ID: %d", [[NSProcessInfo processInfo] processName], [[NSProcessInfo processInfo] processIdentifier]);
Run Code Online (Sandbox Code Playgroud)

dre*_*ewh 14

  • %@:输出对象的字符串形式(包括NSString).
  • %f:输出浮点数(float)
  • %d:输出整数(int)
  • %x:输出数字的十六进制形式

你原来NSString:stringWithFormat:有两个问题:

  1. @%应该%@输出一个NSString.
  2. 您使用%f而不是%d输出int.