gpt4 book ai didi

objective-c - Objective-C 的 "stringWithFormat:"方法发生了什么?

转载 作者:行者123 更新时间:2023-12-03 16:51:16 26 4
gpt4 key购买 nike

当我定义时

NSString *testString = [NSString stringWithFormat:@"%4d", 543210];

那么 testString@"543210",而不是 @"3210"

这曾经在Xcode v4.3.1中工作,但现在我升级到v4.6并且它停止工作。

有什么想法吗?

最佳答案

then testString is @"543210", instead of @"3210"

无论如何,这是正确的行为。 %Nd 格式说明符不限制要格式化的数字的字段 - 仅当字段大于表示数字所需的字符数时才用空格填充。如果您之前得到的是 3210,那是错误的。

如果您想格式化一个数字,以便最多打印其最后四位数字,那么您可以执行以下操作:

NSString *numStr = [NSString stringWithFormat:@"%d", 543210]; // or whatever
if (numStr.length > 4) {
numStr = [numStr substringFromIndex:numStr.length - 4];
}

关于objective-c - Objective-C 的 "stringWithFormat:"方法发生了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16331663/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com