【发布时间】:2011-01-24 05:51:02
【问题描述】:
我有以下代码用于将毫秒转换为小时、分钟和秒:
int hours = floor(rawtime / 3600000);
int mins = floor((rawtime % 3600000) / (1000 * 60));
int secs = floor(((rawtime % 3600000) % (1000 * 60)) / 1000);
NSLog(@"%d:%d:%d", hours, mins, secs);
NSString *hoursStr = [NSString stringWithFormat:@"%d", hours];
NSString *minsStr = [NSString stringWithFormat:@"%d", mins];
NSString *secsStr = [NSString stringWithFormat:@"%d", secs];
NSLog(@"%a:%a:%a", hoursStr, minsStr, secsStr);
相当简单。 Rawtime 是一个值为 1200 的 int。输出如下:
0:0:1
0x1.3eaf003d9573p-962:0x1.7bd2003d3ebp-981:-0x1.26197p-698
为什么将整数转换为字符串会产生如此疯狂的数字?我试过使用 %i 和 %u ,它们没有任何区别。发生了什么?
【问题讨论】:
标签: iphone objective-c string int