How can I get the current time in milliseconds using C?

c, datetime

Solution

- On Unix, use gettimeofday() to get the answer in microseconds and scale to milliseconds.

- Or use POSIX clock_gettime() to get the answer in nanoseconds and scale to milliseconds.

Problem

How might I get the current time in milliseconds in C? I am doing following to get the time in seconds: ``` struct tm ptm; now = time(NULL); localtime_r(&now,ptm); myTime= (ptm->tm_hour * 3600) + (ptm->tm_min * 60) + (ptm->tm_sec); ``` Looking at time.h, `struct tm` does not have the millisecond member in it.

Original source

Related problems