是否有C的跨平台框架?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了是否有C的跨平台框架?相关的知识,希望对你有一定的参考价值。

我很想知道是否有任何类型的C语言编程库/框架用于跨平台编程。我的意思是已经有类似Cx的Wxwidgets,Boost,Qt,U ++等框架,但我还没有找到任何C语言。

更新信息:

我们正在尝试构建一个在我们的项目中使用的底层Framework /库。我们将消除dotnet,而是提供快速且要求不高的库的对应物。

我们将致力于基于服务器/客户端的项目,因此底层服务必须快速且便携。 GUI现在不是我们的首要任务,但提供线程功能的库对我们来说非常重要。

而对于ANSI部分,我认为我们现在很好,除非将来发生变化。

答案

如果你编写普通的ANSI C,它应该适用于每个POSIX系统。跨平台C库最成功的例子是标准C库本身(IMHO)。

如果您正在寻找GUI工具包GTK就是答案,如果您正在寻找终端UI,ncurses非常便携。

如果您正在寻找通用库,只要它们是用ANSI C编写的,只要它不使用系统级API,它几乎可以在任何地方工作。

您能告诉我们,您正在寻找什么样的库/框架?

另一答案

GTK+是一个长期建立并积极维护的跨平台C-only(或主要)工具包。您不仅可以找到在线文档,还可以找到有关它的书籍。它是支持GNOME项目的框架。

首先,GTK +旨在用UI构建应用程序。但是,即使您不需要UI,您也会发现一些GTK +组件,即GLib,提供与Qt相当的一般多平台支持。实际上,我首先需要一个没有UI的框架,并选择了GLib而不是APR,因为我能够更轻松地找到文档和教程。

GTK +最初是在UN * X和X-Windows上开发的,它仍然是您可以最轻松地运行它的平台。我不会说在Windows上更难;只是你有更多的编译环境选项。我从准备好的GTK +软件包和MinGW开始,但最终将GTK +与MSVC集成。

GTK +存在很长时间,有些人可能会发现它是老派的。另一方面,它表明它已被证明是稳定和有用的。还有C++C#的绑定。

与每个大框架一样,您需要的越多,您需要学习的时间就越长。但另一方面它也有效;你学的越多,你就可以做得越多。一致的编码风格有助于习惯它。

---费达

以上是关于是否有C的跨平台框架?的主要内容,如果未能解决你的问题,请参考以下文章

使用 cmake 来搭建跨平台的应用程序框架:C语言版本

跨平台移动开发语言

跨平台网络通信与服务器框架 acl 3.2.0 发布

java 做桌面程序 都有哪些好的框架 是否都是封装java swing 的??

Qt框架可以用来创建跨平台库吗

如何编译POCO