C语言内联函数
发布日期:2021-06-30 19:07:16 浏览次数:3 分类:技术文章

本文共 958 字,大约阅读时间需要 3 分钟。

 

内联函数也称内嵌函数,它主要解决程序的运行效率。

#####################问题#########################################
函数调用需要建立栈内存环境,进行参数传递,并产生程序执行转移,这些转移都需要时间开销。
有些函数在程序中使用率较高,但代码却很短。
我们可以在程序当中用表达式替换函数调用,但是降低了函数的可读性。
######################解决方法#################################################
使用内联函数
内联函数必须在被调用前声明或定义。因为内联函数的代码必须在被替换之前已经声称被替换的代码。
注意:
1.在内联函数内不允许用循环语句和开关语句。递归函数是不能用来做内联函数的。
2.内联函数的定义必须出现在内联函数第一次被调用之前。
3.内联函数只适合于1-5行的小函数。对于一个含有很多语句的大函数,函数调用和返回的开销相对来说是微不足道的。

#include 
inline int isnumber(char); // inline 函数声名 void main() { char c; while((c=cin.getc())!= '\n ') { if( isnumber(c) ) //调用一个小函数 cout < < "you entered a digit \n "; else cout < < "you entered a non-digit \n "; } } int isnumber (char ch) //此处无inline,视为inline { return (ch> = '0 '&& ch <= '9 ')?1:0; }

 

转载地址:https://linuxstyle.blog.csdn.net/article/details/1536745 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:PHP连接MySQL的2种方法以及防止乱码
下一篇:Asp.net如何实现页面间的参数传递

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年04月14日 14时15分08秒