2025年3月28日 星期五 甲辰(龙)年 月廿七 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > C语言

C语言内部函数到底是什么?

时间:12-30来源:作者:点击数:92

内部函数(用static关键字说明)是作用域只限于说明它的源文件的函数。作用域指的是函数或变量的可见性。如果一个函数或变量在说明它的源文件以外也是可见的,那么就称它具有全局或外部作用域;如果一个函数或变量只在说明它的源文件中是可见的,那么就称它具有局部或内部作用域。

内部函数只能在说明它的源文件中使用。如果你知道或希望一个函数不会在说明它的源文件以外被使用,你就应该将它说明为内部函数,这是一种好的编程习惯,因为这样可以避免与其它源文件中可能出现的同名函数发生冲突。请看下例:

  • #include <stdio.h>
  • int open_customer_table(void); /*global function, callable from any module */
  • static int open_customer_indexes(void); /*local function, used only in this module */
  • int open_customer_table(void)
  • {
  • int ret_code;
  • /* open the customer table */
  • ......
  • if (ret_code == OK)
  • {
  • ret_code = opcn_customer_indexes();
  • }
  • return ret_code;
  • }
  • static int open_customer_indexes(void)
  • {
  • int ret_code;
  • /* open the index files used for this table */
  • ......
  • return ret_code;
  • }

在上例中,函数open_customer_table()是一个外部函数,它可以被任何模块调用,而函数open_customer_indexes()是一个内部函数,它永远不会被其它模块调用。之所以这样说明这两个函数,是因为函数open_customer_indexes()只需被函数open_customer_table()调用,即只需在上例所示的源文件中使用。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门