Quelle est la méthode correcte pour imprimer un NSString en Objective-C? De nombreux exemples utilisent NSLog(), mais selon la documentation:Impression d'un NSString
NSLog est une fonction FoundationKit permettant d'imprimer des instructions de débogage sur la console. ... NSLog fonctionne essentiellement comme: fprintf (stderr, format_string, args ...);
Ce qui pour moi est un peu comme la macro _TRACE dans Win32/C++. Je ne veux pas imprimer sur stderr, je veux imprimer sur stdout. Il y a des gens qui suggèrent d'utiliser le printf() comme suit:
printf("%s", [str cStringUsingEncoding:NSUTF8StringEncoding]);
Mais cela semble être un niveau supplémentaire sur indirection pour obtenir le NSString imprimé, et il n'a pas « sentir » comme la solution.
Je comprends 'printf' est une pure fonction C, mais je trouve ça bizarre que vous avez pour l'utiliser pour imprimer un NSString, plutôt que Core Foundation ayant une bibliothèque d'E/S texte. –