Ответ 1
Перемещено из комментария
Вы уверены, что строка с NSLog
выполнена? Попробуйте вставить NSLog
сразу после размещения пула автораспределений в main.m
Я только начал изучать развитие iOS. Я использую в моем коде несколько операторов NSLog
, но они нигде не выводятся. Мое приложение использует конфигурацию отладки, и я запускаю свое приложение в симуляторе iPhone из Xcode. Я проверил как консоль Xcode (в меню Run), так и Console.app на моем Mac, но там ничего.
В чем может быть проблема?
Перемещено из комментария
Вы уверены, что строка с NSLog
выполнена? Попробуйте вставить NSLog
сразу после размещения пула автораспределений в main.m
Убедитесь, что ваш Console
активирован. Для этого вы можете:
NSLog()
вывод на симуляторе действительно отображается в приложении Mac OS X консоли.
Перейдите к All Messages
, а затем отфильтруйте по имени вашего приложения, чтобы избавиться от пуха и снова запустите. Вы увидите его в своем выпуске, если код NSLog на самом деле попадает во время выполнения вашей программы.
Используйте NSLog()
следующим образом:
NSLog(@"The code runs through here!");
Или как это - с заполнителями:
float aFloat = 5.34245;
NSLog(@"This is my float: %f \n\nAnd here again: %.2f", aFloat, aFloat);
В NSLog()
вы можете использовать его как + (id)stringWithFormat:(NSString *)format, ...
float aFloat = 5.34245;
NSString *aString = [NSString stringWithFormat:@"This is my float: %f \n\nAnd here again: %.2f", aFloat, aFloat];
Вы также можете добавить другие заполнители:
float aFloat = 5.34245;
int aInteger = 3;
NSString *aString = @"A string";
NSLog(@"This is my float: %f \n\nAnd here is my integer: %i \n\nAnd finally my string: %@", aFloat, aInteger, aString);
Действительно странно. Просто ради эксперимента: попробуйте перенаправить вывод NSLog в некоторый файл следующим образом:
freopen ("/out","w", stderr);
NSLog(@"1234567890");
Если есть выход, то с вашим stderr
что-то не так.