c++ window是获得时间戳
时间: 2024-11-03 10:12:52 浏览: 4
在C++中,如果你想获取系统当前的时间戳,特别是在Windows平台上,你可以使用`<windows.h>`库中的`GetSystemTimeAsFileTime()`函数。这个函数会返回自1601年1月1日以来的100纳秒时间间隔,这是一个标准的Windows文件时间格式。
以下是一个简单的例子:
```cpp
#include <windows.h>
#include <winbase.h>
#include <stdint.h>
#include <iostream>
FILETIME fileTime;
void getTimeStamp()
{
// 获取当前系统时间作为FILETIME结构体
if (!GetSystemTimeAsFileTime(&fileTime))
{
std::cerr << "Failed to get system time." << std::endl;
return;
}
// 转换FILETIME到100纳秒的时间戳(10^-7秒)
ULARGE_INTEGER utcTimestamp;
utcTimestamp.LowPart = fileTime.dwLowDateTime;
utcTimestamp.HighPart = fileTime.dwHighDateTime;
// 输出时间戳(以100纳秒为单位)
std::cout << "UTC timestamp: " << utcTimestamp.QuadPart << " ns" << std::endl;
}
int main()
{
getTimeStamp();
return 0;
}
```
运行此程序,你会看到类似这样的输出:`UTC timestamp: Xns`,其中X是当前时间的100纳秒数值。
阅读全文