现在我正计划用 C/C++ 编写一个小服务器。该软件的目标将是某种 linux 服务器,所以我认为在 linux 上编程服务器将是最好的主意。问题是,我拥有一台 MacBook(Air)并且我设置了一个 Linux VM,但是 IDE(Qt 创建者)吓坏了我,所以我考虑在 Xcode 中开发服务器,然后在完成编译后在虚拟机。所以我想知道 pthread 和 socket.h 的可移植性等级有多高?如果它们可以移植到某个等级,你会推荐我在 Xcode 中开发吗?(我对 Xcode 很熟悉,因为服务器的客户端将是一个 iOS 应用程序。抱歉我的英语不好(我来自德国)和(可能)感谢您的评论 :)
问问题
619 次
2 回答
0
尽管使用 Boost 可能会让您的生活更轻松,但要回答这个问题<pthread.h>
,<sys/socket.h>
它既是标准的 POSIX 头文件,又可以在 Mac OS X 和 GNU/Linux 等 POSIX 系统之间移植。GNU 标头中可能有些东西是非标准扩展或较新 POSIX 的一部分,因此不受 Mac OS X 支持,但几乎所有在Mac OS X<pthread.h>
上<sys/socket.h>
可用的东西在 GNU/Linux 上也可用并且可以工作相同。可以肯定的是,通过阅读函数的手册页或在线查看Single UNIX Specification(该链接适用于 Mac OS X 的旧版本 POSIX支持,GNU/Linux 大多符合最新的POSIX 2008规范。)
请注意,Mac OS X 支持基本 POSIX 规范但不是所有可选部分,例如它不支持 POSIX 2001 的“计时器”选项(这是基本规范的一部分,即在 POSIX-2008 中不是可选的)
于 2012-12-15T16:44:11.847 回答