Как получить текущее время в миллисекундах в программировании на C
Возможный дубликат:
Как измерить время в миллисекундах с использованием ANSI C?
Как получить системное время Windows с разрешением в миллисекундах?
Мы хотим рассчитать время, которое игрок взял, чтобы закончить игру.
Но с time.h мы могли рассчитывать только за секунды. но это не точно. Можно ли получить время в миллисекундах?
и что такое%? распечатать?
Ответы
Ответ 1
быстрый ответ
#include<stdio.h>
#include<time.h>
int main()
{
clock_t t1, t2;
t1 = clock();
int i;
for(i = 0; i < 1000000; i++)
{
int x = 90;
}
t2 = clock();
float diff = ((float)(t2 - t1) / 1000000.0F ) * 1000;
printf("%f",diff);
return 0;
}
Ответ 2
Нет никакого портативного способа получить разрешение меньше секунды в стандарте C. Так что лучше всего вы можете это сделать, используйте функцию POSIX gettimeofday ( ).
Ответ 3
Если вы используете Unix-подобную систему, используйте gettimeofday
и преобразуйте результат с микросекунд в миллисекунды.