c - 此代码是否返回毫秒到秒的纪元时间
问题描述
我是 linux 程序员,正在将一些 windows 代码移植到 Linux。
这是我需要移植的 Windows 代码片段。
///////////////////////////////////////////////////////////////////////////////
//
// static DWORD private_GetLongTime(void)
//
// Function returns current time in the c-runtime format of the
// number of milliseconds since midnight, January 1, 1970.
//
///////////////////////////////////////////////////////////////////////////////
//
static DWORD private_GetLongTime(void)
{
SYSTEMTIME SystemTime;
DWORD dwDateTime = 0;
WORD wYear = 1970;
WORD wDays = 0;
INT64 FileTime;
INT64 FileTime2;
INT64 SecondsSince1970;
// read the current time
GetSystemTime(&SystemTime);
SystemTimeToFileTime(&SystemTime,(FILETIME *) &FileTime);
SystemTime.wYear = 1970;
SystemTime.wMonth = 1;
SystemTime.wDay = 1;
SystemTime.wHour = 0;
SystemTime.wMinute = 0;
SystemTime.wSecond = 0;
SystemTime.wMilliseconds = 0;
SystemTimeToFileTime(&SystemTime,(FILETIME *) &FileTime2);
SecondsSince1970 = (INT64) FileTime - (INT64) FileTime2;
dwDateTime = (DWORD ) (SecondsSince1970/ 10000000L);
return dwDateTime;
}
评论说它正在返回毫秒,但根据我对 API 的理解,它正在以秒为单位返回......请确认......
解决方案
static DWORD private_GetLongTime(void)
返回秒。
推荐阅读
- autodesk-forge - Autodesk Forge:文件上传恢复总是返回 202,即使是最终块
- python - 关闭在 dll 中创建的套接字
- angular - 西班牙字符导入错误
- html - HTML表单输入类型=“密码”CSS不起作用
- javascript - CORS 不适用于 Firebase 云功能中的特定域
- unit-testing - 如何检查本地新代码的单元测试覆盖率
- javascript - 如何在Angular中的事件函数内调用组件的方法?
- git - IntelliJ IDEA Git 克隆 - 如何删除公钥认证
- reactjs - 如何在 React 上切换侧边栏
- java - 停止录制屏幕时应用程序崩溃