La Web del Programador: Comunidad de Programadores
 
    Pregunta:  30726 - SOBRE TIME.H Y DIFFTIME( )
Autor:  Jaime Rojas Arriaga
No es C ni Visual C, pero es muy parecido; C++.

Tengo que registrar el tiempo que tarda mi computadora en ordenar un arreglo con el método InsertionSort, mi problema es que esto posiblemente lo hace en menos de un segundo y con el método difftime( ) solo puedo ver números cerrados (1 segundo, 2 segundos, etc.).

He intentado guardarlo en un float e inclusive desplegarlo con 50 puntos decimales pero aun así me sigue mostrando por ejemplo:
1.0000000000000000000000000000000...

Quisiera que alguien me aconsejara como le puedo hacer con esta función o que me recomendara otra función que determine el tiempo de ordenamiento y me lo despliegue con punto decimal.

De antemano muchas gracias.

Jaime.

  Respuesta:  Enic Cecilla Real
timeGetTime te dara el tiempo del sistema con precision de milisegundos, lo tienes declarado en <mmsystem.h>, deberás enlazar con winmm.lib.

  Respuesta:  chuidiang www.geocities.com/chuidiang
El problema es que las funciones de time trabajan en segundos y hagas lo que hagas, nunca obtendras algo inferior a 1 segundo.
Tienes que usar otra función. Suele haber una que te cuenta "ticks" del reloj interno y una constante en algún lado te dice, por ejemplo, que 100 ticks son un segundo. Con esto podrías afinar hasta la centésima de segundo.
En unix/linux, la función si no recuerdo mal, se llama getitimer. Te devuelve el tiempo de proceso en "ticks". Basta tomarlo antes y después de las cuentas.

Se bueno.