《C语言教程》课程PPT教学课件:内部函数和外部函数

内部函数和外部函数 函数一般来说是全局的,因为一个函 数要被另外的函数调用,但也可以指定 函数不被其他文件调用,根据一个函数 能否被其它的源文件调用,可以将函数 分为内部函数和外部函数 1内部函数 该函数只能被文件中的其它函数所调用, 称为内部函数,内部函数也称为静态函 数
内部函数和外部函数 • 函数一般来说是全局的,因为一个函 数要被另外的函数调用,但也可以指定 函数不被其他文件调用,根据一个函数 能否被其它的源文件调用,可以将函数 分为内部函数和外部函数 1.内部函数 该函数只能被文件中的其它函数所调用, 称为内部函数,内部函数也称为静态函 数

内部函数和外部函数 内部函数的定义 static类型标识符函数名(形参表) 使用内部函数,则在其它的文件中如 果有同名的函数,则同名的函数互相不 干扰,这样就允许多人编写不同的函数, 而不必担心函数重名
内部函数和外部函数 内部函数的定义 static 类型标识符 函数名(形参表) 使用内部函数,则在其它的文件中如 果有同名的函数,则同名的函数互相不 干扰,这样就允许多人编写不同的函数, 而不必担心函数重名

内部函数和外部函数 2外部函数 定义的格式: extern类型标识符函数名(形参表 例子: extern int fun(int a, int b) 注意:如果在定义函数的时候省略了关 键字 extern,系统会默认是外部函数
内部函数和外部函数 2.外部函数 定义的格式: extern 类型标识符 函数名(形参表) 例子: extern int fun(int a,int b) 注意:如果在定义函数的时候省略了关 键字extern,系统会默认是外部函数

内部函数和外部函数 例子: filel #include void input( char str[20D) printf( please input a string: n gets(str);
内部函数和外部函数 例子: file1.c #include void input(char str[20]) { printf(“please input a string:\n”); gets(str); }

内部函数和外部函数 file2. c #include static void display(char str[20D) printf( %os", str);
内部函数和外部函数 file2.c #include static void display(char str[20]) { printf(“%s”,str); }

内部函数和外部函数 file3.c #include e static void display(char str[20] printf("%osn”,str) main( i extern input(char str[20D) char str1[20] input(strl) display( strl)
内部函数和外部函数 file3.c #include static void display (char str[20]) { printf(“%s\n”,str); } main() { extern input(char str[20]); char str1[20]; input(str1); display(str1);}

内部函数和外部函数 上述程序说明 1.以上程序总共有三个源程序组成, 其中,flel中定义了一个外部函数, fle2中定义了一个内部函数,fle3中定 义了一个内部函数,并且调用了flel中 定义的外部函数 2fil2和fe3文件的函数定义是相同 的,即它们的函数名是相同的,但由于 它们都是内部函数,所以互不影响
内部函数和外部函数 • 上述程序说明 1.以上程序总共有三个源程序组成, 其中,file1中定义了一个外部函数, file2中定义了一个内部函数,file3中定 义了一个内部函数,并且调用了file1中 定义的外部函数 2.file2和file3文件的函数定义是相同 的,即它们的函数名是相同的,但由于 它们都是内部函数,所以互不影响

内部函数和外部函数 如何运行一个多文件的程序 通常的做法: 用# include命令 将fel,file2包含到fle3中去,这样在 编译的时候,系统将这三个文件当做 个整体进行编译,就像是同一个程序 样
内部函数和外部函数 • 如何运行一个多文件的程序 通常的做法: 用# include 命令 将file1,file2包含到file3中去,这样在 编译的时候,系统将这三个文件当做一 个整体进行编译,就像是同一个程序一 样
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《C语言教程》课程PPT教学课件:数组作为函数参数.ppt
- 《C语言教程》课程PPT教学课件:字符数组的元素.ppt
- 《C语言教程》课程PPT教学课件:预处理命令.ppt
- 《C语言教程》课程PPT教学课件:程序设计中的函数.ppt
- 《C语言教程》课程PPT教学课件:变量存储类别.ppt
- 《C语言教程》课程PPT教学课件:二维数组的定义.ppt
- 《C语言教程》课程PPT教学课件:循环控制.ppt
- 《C语言教程》课程PPT教学课件:指针是C语言中重要的概念.ppt
- 《C语言教程》课程PPT教学课件:指针作为函数参数.ppt
- 《C语言教程》课程PPT教学课件:指针的各种定义.ppt
- 《C语言教程》课程PPT教学课件:数组与指针的自定义.ppt
- 《C语言教程》课程PPT教学课件:多维数组与指针.ppt
- 《C语言教程》课程PPT教学课件:数组与指针.ppt
- 《C语言教程》课程PPT教学课件:C程序设计For循环.ppt
- 《C语言教程》课程PPT教学课件:选择结构程序设计.ppt
- 《C语言教程》课程PPT教学课件:指针与函数.ppt
- 《DWDM培训原理》教材PPT课件讲解.doc
- 《C语言教程》课程教学资源(教案讲义)程序设计及应用实例(共十一章).pdf
- 《C语言教程》课程教学资源(教案讲义)第十章 指针.doc
- 《C语言教程》课程教学资源(教案讲义)第十三章 文件.doc
- 《C语言教程》课程PPT教学课件:局部变量和全局变量.ppt
- 《C语言教程》课程PPT教学课件:函数调用的一般形式.ppt
- 《C语言教程》课程PPT教学课件:数组的数据的集合.ppt
- 《C语言教程》课程教学资源:课堂笔记.doc
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第一章 软件危机与软件工程.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第七章 编码.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第九章 软件维护.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第二章 软件生命周期及软件开发模式.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第五章 总体设计.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第八章 软件测试.ppt
- 湖北汽车工业学院:《软件工程》课程教学资源(PPT课件)第六章 详细设计.ppt
- 西北工业大学:《DSP软件编程与算法实现》 开发流程讲解.ppt
- 《ANSYS教程》教学资源(PPT课件讲稿,共五章).ppt
- 《电子商务》 电子商务概论总复习.ppt
- 《AutoCAD 2002应用教程》电子教案(PPT教学课件)目录.ppt
- 《AutoCAD 2002应用教程》电子教案(PPT教学课件)第一章 绘图基础.ppt
- 《AutoCAD 2002应用教程》电子教案(PPT教学课件)第二章 二维绘图.ppt
- 《AutoCAD 2002应用教程》电子教案(PPT教学课件)第三章 二维图形编辑.ppt
- 《AutoCAD 2002应用教程》电子教案(PPT教学课件)第四章 辅助绘图.ppt
- 《AutoCAD 2002应用教程》电子教案(PPT教学课件)第五章 尺寸标注.ppt