Słyszałem, że powinieneś unikać prowadzenia nowych linii podczas korzystania printf
. Więc zamiast tego printf("\nHello World!")
powinieneś użyćprintf("Hello World!\n")
W tym konkretnym przykładzie powyżej nie ma to sensu, ponieważ wynik byłby inny, ale rozważ to:
printf("Initializing");
init();
printf("\nProcessing");
process_data();
printf("\nExiting");
w porównaniu do:
printf("Initializing\n");
init();
printf("Processing\n");
process_data();
printf("Exiting");
Nie widzę żadnych korzyści z końcowymi znakami nowej linii, poza tym, że wygląda lepiej. Czy jest jakiś inny powód?
EDYTOWAĆ:
Zajmę się głosowaniem w tej sprawie tutaj i teraz. Nie sądzę, że należy to do przepełnienia stosu, ponieważ to pytanie dotyczy głównie projektowania. Powiedziałbym również, że chociaż mogą to być opinie w tej sprawie, odpowiedź Kiliana Fotha i odpowiedź cmastera dowodzą, że rzeczywiście jedno podejście przynosi bardzo obiektywne korzyści.
init()
i process_data()
wydrukuj coś samodzielnie? Jak wyglądałby wynik, gdyby tak się stało?
\n
jest terminatorem linii , a nie separatorem linii . Dowodem na to jest fakt, że pliki tekstowe w systemie UNIX prawie zawsze kończą się na \n
.