Аргумент данных, не используемый строкой формата

Вопрос:Следуя видеороликам на объекте lynda c, я запустил небольшую проблему, #import #import "Player.h" int main(int argc, const char * argv[]) { @autoreleasepool { Player *p = [[Player alloc] init]; NSLog(@"The score is @i", [p score]);

Вопрос:

Следуя видеороликам на объекте lynda c, я запустил небольшую проблему,

#import <Foundation/Foundation.h> #import «Player.h» int main(int argc, const char * argv[]) { @autoreleasepool { Player *p = [[Player alloc] init]; NSLog(@»The score is @i», [p score]); <— Data argument not used by format string } return 0; } Лучший ответ:

У вас нет допустимой строки формата. Вы хотите %i, а не @i.

Ответ №1

Используйте NSLog(@»The score is %i», [p score]);

score возвращает целое число, поэтому %i или %d следует использовать не @i

Ответ №2

Если значение, возвращаемое [p score], является целым числом, оно должно быть
NSLog (@ “Оценка % i“, [p score]);//Всегда используйте ‘%’ как спецификатор формата, а не ‘@’

Ответ №3

Строка формата должна использовать %i вместо @i:

NSLog(@»The score is %i», [p score]);

Оцените статью
Добавить комментарий