Ho sentito che dovresti evitare di guidare le nuove linee quando usi printf
. In modo che al posto printf("\nHello World!")
tuo dovresti usareprintf("Hello World!\n")
In questo esempio particolare sopra non ha senso, poiché l'output sarebbe diverso, ma considera questo:
printf("Initializing");
init();
printf("\nProcessing");
process_data();
printf("\nExiting");
rispetto a:
printf("Initializing\n");
init();
printf("Processing\n");
process_data();
printf("Exiting");
Non riesco a vedere alcun beneficio con le nuove righe finali, tranne per il fatto che sembra migliore. C'è qualche altro motivo?
MODIFICARE:
Mi rivolgerò ai voti stretti qui e ora. Non penso che questo appartenga allo overflow dello Stack, perché questa domanda riguarda principalmente il design. Direi anche che, sebbene possano essere opinioni in merito, la risposta di Kilian Foth e la risposta di cmaster dimostrano che ci sono davvero vantaggi molto oggettivi con un approccio.
init()
e process_data()
stampare qualcosa da soli? Come ti aspetteresti che il risultato sembrasse se lo facessero?
\n
è un terminatore di linea , non un separatore di linea . Ciò è dimostrato dal fatto che i file di testo, su UNIX, finiscono quasi sempre con \n
.