1

簡単に言えば、次のコードは、なぜ失敗するのかについて私を困惑させています。

// This line works
NSString * string = [NSString stringWithFormat:@"%lu",[[NSDate date] timeIntervalSince1970]];

// This line works
string = [NSString stringWithFormat:@"%@",@"somestring"];

// This line generates and EXEC_BAD_ACCESS error
string = [NSString stringWithFormat:@"%lu%@",[[NSDate date] timeIntervalSince1970],@"somestring"];

なんで?

4

1 に答える 1

2

によって返される値は、[[NSDate date] timeIntervalSince1970]印刷しているNSTimeIntervalタイプのタイプ です。と交換して大丈夫です。typedef double NSTimeInterval;unsigned int@"%lu%@"@"%f%@"

于 2012-04-14T10:02:16.043 に答える