cout ou printf lequel des deux a une vitesse d'exécution rapide C++?

J'ai été codage en C++ pour un long moment. Je me suis toujours demandé qui a une vitesse d'exécution rapide printf ou cout?

Situation: je suis en train de concevoir une application en C++ et j'ai certaines contraintes telles que le temps imparti pour l'exécution. Ma demande a la charge de l'impression des commandes sur la console. Alors, qui serait préférable printf ou cout?

  • S'il est important pour vous, d'écrire une petite application qui fait les deux et le temps. Qui devrait vous prendre toutes les 15 minutes pour le faire.
  • il n'est pas simple. std::cout et l'opérateur<< causer plus de code pour être émis au moment de l'appel. Tous printf logique est situé dans le CRT, mais utilise d'exécution de la logique d'interpréter l'argument chaîne. Ainsi, d'importants programmes avec de nombreux sites d'appel et de nombreuses directives de mise en forme peut voir les différents effets qu'un petit programme de test avec juste un gros for(a lot) { printf("%d",i); }
  • pas pour quelque chose que de faire de la console I/O - le programme sera I/O bound. Et ce que vous dites est un argument pour ne jamais tester quoi que ce soit.
  • je pense qu'il est juste de dire que si quoi que ce soit, printf est plus rapide. (oui j'ai mesuré, oui j'ai éteint stdio synchronisation - tous ont été plus lent que le cout).
  • Double Possible de ce qui est plus rapide, et qui est plus souple: printf ou de cout?
InformationsquelleAutor pirate | 2009-05-22