1.外部函数:定义的函数能被本文件和其他文件访问
1> 默认情况下所有函数都是外部函数
2> 不允许有同名的外部函数
2.内部函数:定义的函数只能被本文件访问,其他文件不能访问
1> 允许不同文件中有同名的内部函数
3.static对函数的作用:
1> 定义一个内部函数
2> 声明一个内部函数
4.extern对函数的作用:
1> 完整地定义一个外部函数
2> 完整地声明一个外部函数
(extern可以省略,默认情况下声明和定义的函数都是外部函数)
5. 全局变量分2种:
外部变量:定义的变量能被本文件和其他文件访问
1> 默认情况下,所有的全局变量都是外部变量
2> 不同文件中的同名外部变量,都代表着同一个变量
内部变量:定义的变量只能被本文件访问,不能被其他文件访问
1> 不同文件中的同名内部变量,互不影响
static对变量的作用:
定义一个内部变量
extern对变量的作用:
声明一个外部变量
static对函数的作用:
定义和声明一个内部函数
extern对函数的作用:
定义和声明一个外部函数(可以省略)
6.用static修饰局部变量的时候需要注意的是
#include <stdio.h>/*static修饰局部变量的使用场合:1.如果某个函数的调用频率特别高2.这个函数内部的某个变量值是固定不变的*/void test(){static double pi = 3.14;double zc = 2 * pi * 10;int a = 0;a++;printf("a的值是%d\n", a); // 1/*static修饰局部变量:1> 延长局部变量的生命周期:程序结束的时候,局部变量才会被销毁2> 并没有改变局部变量的作用域3> 所有的test函数都共享着一个变量b*/static int b = 0;b++;printf("b的值是%d\n", b); // 3}int main(){for (int i = 0; i<100; i++) {test();}test();test();test();return 0;}
本文详细解析了C语言中外部与内部函数的区别,包括它们的定义、使用场景及注意事项。同时,还深入探讨了静态(static)与外部(extern)关键字如何应用于函数和变量上,以及static关键字用于局部变量时的行为特点。
1447

被折叠的 条评论
为什么被折叠?



