7
votes

Comment compter combien de millisecondes il prend mon programme pour courir?

Ceci montrera combien de secondes: xxx

Ceci montrera combien de tiques: xxx

Comment puis-je obtenir des millisecondes? < / p>


0 commentaires

6 Réponses :


6
votes

Si vous utilisez un système d'exploitation UNIX, comme Linux ou Mac OS X , vous pouvez aller à la ligne de commande et utilisez la ligne xxx

la commande temporelle de temps combien de temps l'exécution de toute ligne de commande prend et indique à vous.

Je ne fais pas savoir s'il y a quelque chose comme ça pour Windows, ni comment vous pouvez mesurer les milisecondes à l'intérieur d'un programme C / C ++, cependant.


0 commentaires

14
votes

Voir la question " convertir la différence entre 2 fois en millisecondes " sur le débordement de la pile.

ou utilisez ceci: xxx


2 commentaires

Pourquoi utilisez-vous (horlogs_per_sec / 1000)? N'est-ce pas horlogs_per_sec est 1000, alors horlocs_per_sec / 1000 = 1, et il n'a pas de sens pour diviser par 1.


Ce lien va à une réponse pour le langage de programmation C # C #.



3
votes

Il y a un clocks_per_sec macro pour vous aider à convertir des ticks en millisecondes.

Il existe des API spécifiques à O / S pour obtenir des minuteries haute résolution.

Vous pouvez exécuter votre programme plus d'une fois (par exemple, 1000 fois) et mesurer cela à l'aide d'une minuterie à basse résolution (par exemple, un nombre de secondes), puis diviser ce total par le nombre de fois que vous avez rencontrés pour obtenir un (résolution plus haute) temps moyen.


0 commentaires



0
votes

Cela montrera combien de tiques: p>

#include <stdio.h>
#include <time.h>
#include <windows.h>

int main()
{
    unsigned long x = clock();
    Sleep(1000);
    printf("Difference: %d", clock() - x);
}

0 commentaires