gpt4 book ai didi

c - 为什么编写可移植的 C 程序很困难?

转载 作者:太空狗 更新时间:2023-10-29 16:32:49 25 4
gpt4 key购买 nike

我想知道,为什么不包含胶水代码就很难让程序在许多操作系统(如 Windows 和 Linux)中运行。它们都共享相同的架构(x86),所以我认为它应该很简单。此外,C 是标准化的,那么为什么这些操作系统中的实现不同呢?为什么很难遵循标准并为所有操作系统实现通用库?

我用 C 编程已经快两年了,目前我使用 glib 来提高可移植性。

我不是在寻找这个问题的解决方案,我已经为此目的使用了 glib。但我想知道为什么有必要,为什么很难制作一个没有差异的 C 库。

[添加]

例如,当我用 C/Glib 编写程序时,我使用 gchar/gint 等类型,实际上是 C 原始类型,在关于 glib 的维基百科中,它说:

"Features

On an elementary level GLib provides type definitions replacing the C primitive types char, int, float, and so on in order to improve portability"

为什么 C 基本类型不是可移植的和整个语言?

谢谢大家的回答。

最佳答案

使您的基本 C 程序能够进行一些计算并打印结果很容易。

问题在于,任何执行实质性任务的 C 程序都将依赖操作系统提供的大量服务,而这些服务在很多方面都有所不同。文件 I/O 往往相似,但在图形方面,它们有很大不同。这就是问题的关键。

关于c - 为什么编写可移植的 C 程序很困难?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1257923/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com