C++中关于内部与外部函数
来源:互联网 发布:手机扫描录入软件 编辑:程序博客网 时间:2024/05/18 15:08
1》如果一个函数只能被本文件中其他函数所调用 ,它称为内部函数,又称为静态(static)函数。
内部函数首部的一般形式为:
static 类型标识符 函数史(形参表)
static int func (int a, int b)
可以使内部函数只局限于所在的文件内。
如果在不同的文件中有同名的内部函数,互不干扰。这样不同的人可以分别编写不同的函数,而不用担心所用的函数是否会与其他文件中的函数重名。
2》如果在函数首部的最左端以关键字 extern(可以省略) ,则表示此函数是外部函数,可供其他文件调用 。
外部函数首部的一般形式为:
extern 类型标识符 函数史(形参表)
extern int func (int a ,int b )
注意:如果在定义函数时省略extern,则默认为外部函数。
3-1》file1.cpp
#include<iostream>
using namespace std;
int main ()
{
extern int max(int a,int b);//声明在本函数将要调用在其他文件中定义的max函数
int a,b;
a=10;
b=20;
cout<<max(a,b)<<endl;
return 0;
}
3-2》file2.cpp
extern int max(int a,int b)
{
return a>b?a:b;
}
使用此例可知:使用extern 声明就可以在一个文件中调用其他文件中的定义的外部函数了。
利用函数原型扩展函数作用域最常见的例子是#include指令。
例如,在程序中需要调用sin函数,但是三角函数并不是由用户在本文件中定义的,而是存放在数学函数库中的。按以上的介绍,必须在本文件中写出sin函数的原型,否则无法调用sin函数。
sin函数的原型是:
double sin(double x);
本来应该由程序设计者在调用库函数时先从手册中查出所用的库函数的原型,并在程序中一一写出来,但是这样显然是麻烦而困难的。为了减少程序设计都的困难,在头文件cmath中包括了所有的数学函数的原型和其他有关信息,用户只须用以下#include指令:
#include<cmath>
即可。这时,在该文件中就能合法地调用 各数学库函数了。
详见:C++程序设计(第二版) P123-P125
- C++中关于内部与外部函数
- 关于内部函数与外部函数
- [C学习]内部函数与外部函数
- C语言内部函数与外部函数
- C语言外部函数与内部函数
- C语言中的内部函数与外部函数
- C语言-内部函数与外部函数+调用实例
- 【C语言】外部函数和内部函数
- C的内部函数和外部函数
- C的内部函数和外部函数
- c/c++基础(十) c中内部函数和外部函数
- 内部函数外部函数
- C变量(auto、static、register、extern)函数(内部、外部)与存储
- C程序设计语言(K&R)学习笔记--3.函数、作用域、内部变量与外部变量
- C语言中static关键词使用在函数外部和内部的疑惑
- 黑马程序员----C语言内部函数,外部函数,内部变量,外部变量篇
- C语言的内部函数和外部函数用法
- C语言 内部函数和外部函数问题
- JNI中使用LOGCAT 进行Debug
- iOS "xxx" is missing from working copy
- MS SQLserver mysql
- 第二周上机项目1 旱冰场造价
- CentOS 7通过yum安装fcitx五笔输入法
- C++中关于内部与外部函数
- 编译cocos2dx工程,生成libcocos2dcpp.so文件失败
- GLEW配置
- JavaWeb学习笔记(5)--HTTP协议概述
- [linux device driver] Chapter 03:以scull_load为例,讲解bash中反单引号`、双引号等的作用
- C++中用 GetModuleFileName()函数 获得程序当前的运行目录
- Coredata第一课 认识coredata
- java基础-构造方法
- 多少人朝三暮四,多少人假意奉承,多少人以爱之名做尽错事,只有我知道,你那些外人看起来近乎盲目和可笑的坚持有多珍贵