По какой-то причине я получаю ошибку компиляции, когда пытаюсь сделать следующее:
NSLog(@"row: %lu", indexPath.row);
, где row
имеет тип NSUInteger
.Я получаю сообщение об ошибке:
Преобразование указывает тип «unsigned long», но аргумент имеет тип «NSUInteger» (он же «unsigned int»)
.без ошибок компиляции:
NSString * string = [NSString stringWithFormat:@"row: %lu", indexPath.row];
Я использую одну и ту же строку формата и аргумент подстановки в обоих случаях, но почему NSLog
выходит из себя, в то время как -stringWithFormat:
кажется совершенно довольным?Мой компилятор LLVM 1.6.