gpt4 book ai didi

c++ - 将时间 API 从 Linux 移植到 Visual Studio 2008

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:25:01 27 4
gpt4 key购买 nike

我有一个正在移植到 Microsoft Visual Studio 2008 的应用程序,它在 Linux 上构建和运行良好。

我在处理时间例程时遇到问题,我的 Linux 代码如下所示:

#include <sys/types.h>
#include <sys/time.h>

typedef long long Usec;

inline Usec timevalToUsec(const timeval &tv)
{
return (((Usec) tv.tv_sec) * 1000000) + ((Usec) tv.tv_usec);
}

但是编译器在 sys/time.h 头文件上失败了:

fatal error C1083: Cannot open include file:
'sys/time.h': No such file or directory

如果我将 include 更改为 time.h,我会得到一个不同的错误,其中 timeval 没有被定义:

error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int

这是因为 timeval 没有被定义。

包含 time.h 而不是 sys/time.h 是正确的,如果是这样,我从哪里得到 struct timeval 的定义> 在 Microsoft Visual Studio 2008 中?

最佳答案

winsock2.h header 填充将拉入 struct timeval因为它用在像 select 这样的调用中。

关于c++ - 将时间 API 从 Linux 移植到 Visual Studio 2008,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8301370/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com