#includeint sum(int a, int b);int main(){ /************************************************************* * extern static和函数 * 函数可以分为外部函数和内部函数: * 外部函数:定义的函数能被本文件和其他文件访问 * 1、 默认情况下所有函数都是外部函数 * 2、 不允许有同名的外部函数,即就是几个不同的文件中不能出现相同名字的函数 * 内部函数:定义的函数只能被本文件访问,其他文件不能访问 * 1、 允许不同文件中有同名的内部函数 * static对函数的作用: * 1、 定义一个内部函数(该函数只能本文件访问static不能省略) * 2、 声明一个内部函数 * extern对函数的作用: * 1、 完整地定义一个外部函数 * 2> 完整地声明一个外部函数 * (extern可以省略,默认情况下声明和定义的函数都是外部函数) *************************************************************/ int a = 20; int b = 30; int c = sum(a, b); printf("extern sum(20, 30) = %d\n",c); return 0;}
#includestatic int minus(int a, int b);//该函数可以供其他的文件访问,默认是externint sum(int a, int b){ int c = minus(10, 5); printf("static minus(10, 5) = %d\n ", c); return a + b;}//该函数只能本文件进行访问static int minus(int a, int b){ return a - b;}
static minus(10, 5) = 5 extern sum(20, 30) = 50