Где мой вывод NSLog? - PullRequest
       3

Где мой вывод NSLog?

14 голосов
/ 07 марта 2011

Я только начал изучать разработку под iOS.Я использую в своем коде несколько операторов NSLog, но они нигде не выводятся.Мое приложение использует конфигурацию отладки, и я запускаю свое приложение в симуляторе iPhone из Xcode.Я проверил как консоль Xcode (в меню «Выполнить»), так и Console.app на моем Mac, но там ничего нет.

Ответы [ 5 ]

16 голосов
/ 18 мая 2014

Убедитесь, что ваш Console активирован.Для этого вы можете:

  • Перейти к Вид> Область отладки> Активировать консоль (из строки меню)
  • Или нажать C на клавиатуре
6 голосов
/ 07 марта 2011

NSLog() вывод на симуляторе действительно отображается в приложении Console Mac OS X.

Перейдите на All Messages, а затем отфильтруйте по имени вашего приложения, чтобы избавиться от пуха, и выполнитеснова.Вы увидите это в своем выводе, если код NSLog действительно ударил во время выполнения вашей программы.

5 голосов
/ 07 марта 2011

Используйте 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);
2 голосов
/ 07 марта 2011

Удалено из комментария

Вы уверены, что строка с NSLog выполнена?Попробуйте вставить NSLog сразу после автоматического выделения пула в main.m

1 голос
/ 07 марта 2011

Действительно странно. Просто для эксперимента: попробуйте перенаправить вывод NSLog в какой-нибудь файл, подобный этому:

freopen ("/out","w", stderr);
NSLog(@"1234567890");

Если есть выход, значит что-то не так с вашим stderr.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...