c语言extern,externC( 二 )


如果不希望外界使用本文件里定义的函数 , 或者变量 , 该怎么办呢?答案是使用 static 关键字(这个就是题目中说的“与 extern 对应的关键字”) 。以前题主可能使用过 static 来定义静态变量 , 它其实还表示变量或者函数属于“内部符号”(extern 则表示“外部符号”) , 有 static 修饰的全局变量和函数在外部文件中都是不可见的 。
【c语言extern,externC】这时 , cnt 和 add() 函数只能在 fun.c 文件中使用 , 在 main.c 中即使使用 extern 也是不能访问 cnt 和 add() 函数的 。可见 , 因为C语言有了 extern(“外部符号”) 和 static(“内部符号”) 关键字 , 所以我们可以在不同的文件里定义不同的模块时 , 就能方便的控制变量或者函数的访问范围了 。

推荐阅读