尝试使用以下命令打印出N个空格(在示例中为12个):

NSLog(@"hello%@world", [NSString stringWithCharacters:" " length:12]);

const unichar arrayChars[] = {' '};
NSLog(@"hello%@world", [NSString stringWithCharacters:arrayChars length:12]);

const unichar oneChar = ' ';
NSLog(@"hello%@world", [NSString stringWithCharacters:&oneChar length:12]);

但是它们都打印出诸如hello ÔÅÓñüÔÅ®Óñü®ÓüÅ®ÓñüÔ®ÓüÔÅ®world之类的怪异事物……我认为“字符数组”与“字符串”相同,并且与“字符指针”相同? API规范说它将是一个“Unicode字符的C数组”(按Unicode,它是UTF8吗?如果是,那么它应该与ASCII兼容)...如何使其工作以及为什么以这三种方式获胜不行吗

最佳答案

您可以使用%*s指定宽度。

NSLog(@"Hello%*sWorld", 12, "");

Reference:

关于objective-c - 在Objective-C中,如何打印N个空格? (使用stringWithCharacters),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10702678/

10-09 17:53