c - 传递给 Linux C 内联函数的参数

标签 c inline-functions

当从 C 程序调用带有两个整数或指针参数的非内联函数时,它们在寄存器 rdirsi 中传递.编译是否可以通过以下方式完成:内联 函数 的整数/指针参数也在寄存器中传递(并且 在堆栈中传递)?

最佳答案

当一个函数被内联时,它被视为它的代码被写入到调用它的函数中。发生这种情况时,它根本没有传递参数。

当函数没有被内联时,它与普通函数完全没有区别。 inline 只是提示编译器尝试内联一个函数;它根本不影响链接。

关于c - 传递给 Linux C 内联函数的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16040975/

相关文章:

c - C99 inline 背后的想法是什么?

c++ - GCC 编译器内联的深度

c - C内联函数和 “undefined external”错误

c++ - 以下内联函数是否保证具有相同的实现?

c - -finline-limit GCC 编译器选项的确切行为

c - 开源 TCP 服务器框架

c++ - 从文件中读取大量数据并以有效的方式解析日期。如何提高海量数据的性能?

c - c中链表的选择排序

c - main() 的非标准签名编译成功

php 5.3 和 APC(发生了什么)?