我已经从Linux计算机更改为一个窗口,我无法编译我的代码,因为这两个操作系统不共享相同的头文件。
由于unistd.h显然不包括在内,因此Visual C不知道read()
, write()
, close()
, socklen_t()
和bzero()
函数是什么。 谁能帮我这个?
我GOOGLE了这个: 是否有替代unistd.h的Windows(Visual C)?
我不知道unistd.h是如何工作的,也不知道如何编写自己的代码。 有人可以把我连接到一个?
最好的办法是使用MinGW来编译程序,其中包括GCC(及其头文件)。 尝试安装,然后编译你的程序,看看是否一切正常。
read
, write
和close
都在<io.h>
,就像他们传统上在Unix上一样。
不好意思,我不知道bzero
是否被包含在Windows中 – 如果你关心可移植性,通常你想用memset
来代替。
socklen_t
在Windows上通常不会被使用 – 大多数情况下,在Unix上使用socklen_t
在Windows上使用size_t
或int
(在Unix上socklen_t
是当前对size_t
相同的基本类型的另一个引用,如果有一天它可能会有用 – – 也就是寻找问题的解决方案)。