Frameworks C有跨平台的框架吗?

Frameworks C有跨平台的框架吗?,frameworks,cross-platform,Frameworks,Cross Platform,当然,我很想知道是否有任何一种C语言的编程库/框架可以用于跨平台编程。我的意思是已经有了像WxWIDGET、Boost、Qt、U++等的C++框架,但是我还没有找到任何C。p> 更新信息: 我们正在尝试构建一个底层框架/库,以便在我们的项目中使用。我们将取消dotnet,而是为那些速度快、要求低的库提供一个对应的dotnet 我们将致力于一个基于服务器/客户机的项目,因此底层服务必须快速且可移植。GUI现在不是我们的首要任务,但提供线程功能的库对我们来说很重要 对于ANSI部分,我认为我们目前对

当然,我很想知道是否有任何一种C语言的编程库/框架可以用于跨平台编程。我的意思是已经有了像WxWIDGET、Boost、Qt、U++等的C++框架,但是我还没有找到任何C。p> 更新信息:

我们正在尝试构建一个底层框架/库,以便在我们的项目中使用。我们将取消dotnet,而是为那些速度快、要求低的库提供一个对应的dotnet

我们将致力于一个基于服务器/客户机的项目,因此底层服务必须快速且可移植。GUI现在不是我们的首要任务,但提供线程功能的库对我们来说很重要

对于ANSI部分,我认为我们目前对此还可以接受,除非将来会发生一些变化。

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

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

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

GTK+已经存在很长时间了,有些人可能会觉得它过时了。另一方面,它表明它已被证明是稳定和有用的。还有和的绑定

与每个大框架一样,您需要从中学习的越多,学习的时间就越长。但反过来,它也起作用;你学得越多,你就能用它做得越多。一致的编码风格有助于习惯它


---Ferda

如果您编写的是普通的ANSI C,那么它应该可以在每个POSIX系统上运行。 跨平台C库最成功的例子是标准C库本身(IMHO)

如果您正在寻找GUI工具包,GTK就是答案, 如果您正在寻找终端用户界面,ncurses是非常可移植的

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


你能告诉我们,你想要什么样的库/框架吗

谢谢,但是gtk+不仅仅是一个GUI工具包吗?谢谢,。我们正在尝试构建一个底层框架/库,以便在我们的项目中使用。我们将取消dotnet,而是为那些速度快、要求低的库提供一个对应的dotnet。我们将致力于一个基于服务器/客户机的项目,因此底层服务必须快速且可移植。GUI现在不是我们的首要任务,但提供线程功能的库对我们来说很重要。至于ANSI部分,我认为我们目前还可以接受,除非将来会有什么改变。@Hossein试着看看这个问题的答案,你可能会发现一些有用的链接到libsThanks,我想我会坚持OpenMP一段时间。到目前为止,OPenMp和Glib似乎已经足够了。再次感谢你,非常感谢,非常感谢。我更新了我的帖子,提供了关于我们的目的和需要的信息。GLib看起来很有趣,但我们需要提供更多功能的sth,比如支持线程之类的工作。不客气。虽然GLib支持线程和网络,但它的开发主要不是为了提高性能。还有其他专门针对客户端/服务器应用程序的应用程序。是指ACE、POCO和ASIO,例如所有的C++,恐怕…我评估过一次,我喜欢在特定操作系统上使用最快的支持,比如Windows上的IOCP。这里有线程和异步IO。非常感谢亲爱的@Ferdinand Prantl。其中,似乎只有Glib是C友好(兼容- SUBIT),其余的BelOG到C++似乎。无论如何,我认为在OpenMP和Glib之间,我现在将使用OpenMP,如果我们需要更多,我们有Glib要感谢您:)