linux系统iot平台编程阶段总结

耗尽温柔 提交于 2019-11-27 13:20:42

1.inline内联函数

在C语言中,如果一些函数被频繁调用,不断地有函数入栈,即函数栈,会造成栈空间或栈内存的大量消耗。

 为了解决这个问题,特别的引入了inline修饰符,表示为内联函数。

在使用循环里面调用某个函数时,可以使用内联函数。

 其实这种有点类似咱们前面学习的动态库和静态库的问题,使调用函数中的代码直接被放到main 函数中,执行for 循环时,会不断调用这段代码,而不是不断地开辟一个函数栈。

 inline只适合涵数体内代码简单的函数数使用,不能包含复杂的结构控制语句例如while、switch,并且内联函数本身不能是直接递归函数(自己内部还调用自己的函数)。

每一处内联函数的调用都要复制代码,将使程序的总代码量增大,消耗更多的内存空间。

2.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!