c语言函数调用的三种方式
1、内联函数(Inline Function):
内联函数是一种特殊的函数,它与普通函数的最大区别就是:当编译器执行内联函数时,不是执行函数的入口地址,而是将函数的代码直接插入调用函数的位置,从而减少函数调用和返回的调用开销,从而提高程序的效率。
内联函数的定义可以使用关键字 inline,如:
inline int max(int a, int b)
{
return a > b ? a : b;指向类成员函数的指针
}
2、普通函数调用(Normal Function Call):
普通函数调用(即非内联函数),是把函数的入口地址放到栈上,然后跳转到函数地址去执行,调用完毕返回,而在函数调用和返回时,需要改变程序的运行状态,这就需要一定的时间和空间成本,因此普通函数的效率比内联函数要低。
3、类成员函数调用(Class Member Function Call):
类成员函数是针对类这种数据结构定义的函数,它们的调用和普通函数一样,也是通过函数的入口地址跳转来完成的,但是它们特殊之处在于:类成员函数有一个隐藏的 this 指针, 它指向调用该函数的对象。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论