abi

abi

文章 0 浏览 4

C 编译器如何实现返回大型结构的函数?

函数的返回值通常存储在堆栈或寄存器中。但对于大型结构,它必须位于堆栈上。对于这段代码,在真实的编译器中需要进行多少复制?还是已经优化掉了? …

猫瑾少女 2024-08-19 07:52:39 11 0

C/C++ 能做什么? “失去”他们是否定义了标准 ABI?

标题说明了一切。我专门谈论 C/C++,因为两者都认为这是“实现问题”。我认为,定义一个标准接口可以轻松地在其上构建模块系统,以及许多其他好处。 …

断舍离 2024-08-18 08:22:58 13 0

是“argv[0] = 可执行文件名称”吗?一个公认的标准还是一个共同的约定?

在 C 或 C++ 应用程序中将参数传递给 main() 时,argv[0] 是否始终是可执行文件的名称?或者这只是一个常见的约定,并不能保证 100% 正确?…

请帮我爱他 2024-08-18 03:38:37 18 0

为什么应用程序二进制接口对于编程很重要

我不明白为什么 ABI 是开发用户空间应用程序的重要上下文。操作系统的系统调用集是否被视为 ABI?但如果是这样,那么系统调用的所有复杂性不都封装在…

浅暮の光 2024-08-17 15:29:24 12 0

为什么数据结构对齐对性能很重要?

有人能给我一个简短而合理的解释,解释为什么编译器向数据结构添加填充以对齐其成员吗?我知道这样做是为了CPU可以更有效地访问数据,但我不明白为什…

冷︶言冷语的世界 2024-08-17 04:57:02 18 0

为什么共享库的 ELF 标头将 Linux 指定为 OSABI?

我的 Linux 系统 (Fedora 9) 上的所有标准共享库都指定 ELFOSABI_NONE (0) 作为其 OSABI。 这很好 - 但是我从供应商那里收到了一个共享库,其中 ELF …

孤独患者 2024-08-16 18:34:40 14 0

C 运行时对象、dll 边界

为 dll 设计 C API 的最佳方法是什么,它处理传递依赖于 C 运行时的“对象”的问题(FILE*、malloc 返回的指针等)。 例如,如果两个 dll 与不同版本…

绅刃 2024-07-25 19:05:57 11 0

为什么linux内核升级后需要重新编译vmware内核模块?

Linux 内核升级后,我的 VMWare 服务器无法启动,直到使用 vmware-config.pl 进行一些重新配置工作(包括构建一些内核模块)。 如果我使用最新的 Wind…

魂归处 2024-07-19 18:34:49 14 0

大多数现代系统中堆栈增长的方向是什么?

我正在准备一些 C 语言培训材料,我希望我的示例适合典型的堆栈模型。 Linux、Windows、Mac OSX(PPC 和 x86)、Solaris 和最新的 Unix 中的 C 堆栈朝…

素手挽清风 2024-07-15 04:22:49 16 0

在 C 中按值传递结构而不是传递指针有什么缺点吗?

在 C 中按值传递结构而不是传递指针有什么缺点吗? 如果结构体很大,显然会存在复制大量数据的性能问题,但对于较小的结构体,它基本上应该与将多个值…

像极了他 2024-07-06 17:40:28 16 0
更多

推荐作者

Gabu-gabumon

文章 0 评论 0

qq_CgiN62

文章 0 评论 0

荔枝明

文章 0 评论 0

¤→小豸慧

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文