std::timespec_get - cppreference.com (original) (raw)

Defined in header
int timespec_get( std::timespec* ts, int base ); (1) (since C++17)
#define TIME_UTC /* implementation-defined */ (2) (since C++17)
  1. Modifies the std::timespec object pointed to by ts to hold the current calendar time in the time base base.

  2. Expands to a value suitable for use as the base argument of std::timespec_get.

Other macro constants beginning with TIME_ may be provided by the implementation to indicate additional time bases.

If base is TIME_UTC, then

[edit] Parameters

ts - pointer to an object of type std::timespec
base - TIME_UTC or another nonzero integer value indicating the time base

[edit] Return value

The value of base if successful, zero otherwise.

[edit] Notes

The POSIX function clock_gettime(CLOCK_REALTIME, ts) may also be used to populate a std::timespec with the time since the Epoch.

[edit] Example

#include #include   int main() { std::timespec ts; std::timespec_get(&ts, TIME_UTC); char buf[100]; std::strftime(buf, sizeof buf, "%D %T", std::gmtime(&ts.tv_sec)); std::cout << "Current time: " << buf << '.' << ts.tv_nsec << " UTC\n"; }

Possible output:

Current time: 06/24/16 20:07:42.949494132 UTC

[edit] See also