Skip to content

Instantly share code, notes, and snippets.

@345161974
Forked from diabloneo/timespec_diff.c
Created January 18, 2018 07:03
Show Gist options
  • Save 345161974/5d9e9638e0e95fb4c85c36fe18acdfd7 to your computer and use it in GitHub Desktop.
Save 345161974/5d9e9638e0e95fb4c85c36fe18acdfd7 to your computer and use it in GitHub Desktop.
Calculate diff of two struct timespec
#include <time.h>
void timespec_diff(struct timespec *start, struct timespec *stop,
struct timespec *result)
{
if ((stop->tv_nsec - start->tv_nsec) < 0) {
result->tv_sec = stop->tv_sec - start->tv_sec - 1;
result->tv_nsec = stop->tv_nsec - start->tv_nsec + 1000000000;
} else {
result->tv_sec = stop->tv_sec - start->tv_sec;
result->tv_nsec = stop->tv_nsec - start->tv_nsec;
}
return;
}