2

我已经从 linux 计算机更改为 windows 并且我在编译我的代码时遇到了问题,因为这两个操作系统不共享相同的头文件。

由于 unistd.h 显然没有包含在内,Visual C 不知道read()write()close()和函数是什么。谁能帮我这个?socklen_t()bzero()

我用谷歌搜索了这个:Windows (Visual C) 的 unistd.h 有替代品吗?

我不知道 unistd.h 是如何工作的,也不知道如何编写自己的代码。有人可以将我链接到一个吗?

4

2 回答 2

10

read,writeclosein <io.h>, 就像他们传统上在 Unix 上一样。

顺便说一句,我根本不知道bzeroWindows 中包含一个 —— 如果您完全关心可移植性,您通常希望使用它memset

socklen_t通常不会在 Windows 上使用——大多数在 Unix 上的东西socklen_t要么在 Unix 上使用,要么size_tintWindows 上使用(socklen_t在 Unix 上目前是另一个对size_t与寻找问题)。

于 2011-04-16T05:38:31.357 回答
2

最好的办法是使用MinGW编译程序,其中包括(除其他外)GCC(及其头文件)。尝试安装它,然后编译您的程序,看看是否一切正常。

于 2011-04-16T05:37:08.453 回答