相关文章推荐
豪爽的钱包  ·  中国建设银行-远期利率协议·  2 天前    · 
鬼畜的番茄  ·  啵乐链接 - 百度·  9 月前    · 
任性的火车  ·  北京市委书记郭金龙:把支持雄安新区建设作为北 ...·  10 月前    · 
奔放的熊猫  ·  视力模糊?可能是巨大枕叶脑瘤惹的祸 - 中国军网·  10 月前    · 
礼貌的海龟  ·  EOF是什么? - 阮一峰的网络日志·  1 年前    · 
Code  ›  C++内部函数与外部函数 | 调用外部Max函数开发者社区
https://cloud.tencent.com/developer/article/1755325
严肃的围巾
12 月前
小林C语言

C++内部函数与外部函数 | 调用外部Max函数

原创
前往小程序,Get 更优 阅读体验!
立即前往
腾讯云
开发者社区
文档 建议反馈 控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
发布
首页
学习
活动
专区
工具
TVP 最新优惠活动
返回腾讯云官网
小林C语言
首页
学习
活动
专区
工具
TVP 最新优惠活动
返回腾讯云官网
社区首页 > 专栏 > C++内部函数与外部函数 | 调用外部Max函数

C++内部函数与外部函数 | 调用外部Max函数

原创
作者头像
小林C语言
修改 于 2020-12-02 09:58:40
2.3K 0
修改 于 2020-12-02 09:58:40
举报
文章被收录于专栏: C语言入门到精通 C语言入门到精通

C++内部函数

在C++中,根据函数能否被其他源文件调用,将函数区分为内部函数和外部函数。

内部函数是指一个函数只能被本文件中其他函数所调用,在定义内部函数时,在函数名和函数类型的前面加static。

函数首部的一般格式为

代码语言: txt
复制
static 类型标识符 函数名(形参表)
static int Max(int num1,int num2)

内部函数又称静态函数。在C++中使用内部函数,可以使函数只局限于所在文件。如果在不同的文件中有同名的内部函数,互不干扰。

C++外部函数

在C++中定义函数时,如果在函数首部的最左端加上关键字extern,则表示此函数是外部函数,可供其他文件调用。

代码语言: txt
复制
//如函数开头写
extern int Max(int num1,int num2)

按照上述定义,函数Max就可以为其他文件调用。如果在定义函数时省略extern,则默认为外部函数。

经典案例:C++实现调用外部Max函数。

源码分析:

第一步:单独创建一个Max.app的文件,编写代码:

代码语言: txt
复制
#include<iostream>//头文件 
using namespace std;//命名空间 
int Max(int x,int y)//自定义Max函数 
  int temp;//定义中间变量 
  temp=x>y?x:y;//把x y中的较大值赋给temp 
  return temp;//函数返回值为temp 
}

第二步:在头文件添加Max函数,此文件保存格式为.h:

代码语言: txt
复制
#include<iostream>//头文件 
int Max(int x,int y);

第三步:编写主函数内容:

代码语言: txt
复制
#include<iostream>//头文件 
#include "lx.h"//注意此处 
using namespace std;//命名空间 
int main()//主函数 
  extern int Max(int x,int y);//声明外部函数 
  int num1,num2,maxNumber;//定义变量 
  cin>>num1>>num2;//输入两个数 
  maxNumber=max(num1,num2);//把较大的赋值给maxNumber 
  cout<<maxNumber;//输出maxNumber 
 
推荐文章
豪爽的钱包  ·  中国建设银行-远期利率协议
2 天前
鬼畜的番茄  ·  啵乐链接 - 百度
9 月前
任性的火车  ·  北京市委书记郭金龙:把支持雄安新区建设作为北京分内事-新华网
10 月前
奔放的熊猫  ·  视力模糊?可能是巨大枕叶脑瘤惹的祸 - 中国军网
10 月前
礼貌的海龟  ·  EOF是什么? - 阮一峰的网络日志
1 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号