内部函数与外部函数

  • 在C语言中不能被其他源文件调用的函数称谓内部函数 ,内部函数由static关键字来定义,因此又被称谓静态函数,形式为:
    static [数据类型] 函数名([参数])

  • 这里的static是对函数的作用范围的一个限定,限定该函数只能在其所处的源文件中使用,因此在不同文件中出现相同的函数名称的内部函数是没有问题的。

  • 在C语言中能被其他源文件调用的函数称谓外部函数 ,外部函数由extern关键字来定义,形式为:
    extern [数据类型] 函数名([参数])

  • C语言规定,在没有指定函数的作用范围时,系统会默认认为是外部函数,因此当需要定义外部函数时extern也可以省略。

静态变量只赋值一次

外部函数练习

hello.c

#include
#include "test.c"   //引用test.c文件
extern void printLine()     //这里定义的方法对吗?
{printf("**************
");
}
int main()
{say();return 0;
}

test.c

#include
void printLine();
static void say(){
printLine();
printf("I love imooc
");
printf("good good study!
");
printf("day day up!
");
printLine();
}

对于hello.c来说,直接引入了test.c文件。那么就可以调用testc中的static方法say()
而对于test.c并没有引入,可以通过声明来调用另一个源文件中暴露出来的方法。

综合练习

北京市出租车打车计费规则如下:

  1. 每公里单价计费2.3元

  2. 起步价13元(包含3公里)

  3. 晚上23点(含)至次日凌晨5点(不含)打车,每公里单价计费加收20%。

  4. 每次乘车加收1元钱的燃油附加税。
    小明每天上下班都要打车,公司和家的距离为12公里,上午上班时间为9点,下午下班时间为6点。
    请编写一个小程序计算小明每天打车的总费用。

#include float taxifee(int clock,int miles)
{float money;if(miles<=3){money=14;printf("费用为14
");}else{if(clock>=23 || clock<5){money=13+1+2.3*(miles-3)*1.2;printf("夜间车费为:%f
",money);}else{money=13+1+2.3*(miles-3);printf("日间车费为:%f
",money);}}return money;
}
int main()
{printf("打的总费用:%.1f
",taxifee(9,12)+taxifee(18,12));return 0;
}

C语言的内部函数与外部函数相关推荐

  1. C语言 内部函数和外部函数

    C语言学习 内部函数和外部函数 内部函数 外部函数 总结 内部函数和外部函数 函数本质是全局的,因为定义一个函数的目的就是要被另外的函数调用.若不回声明,一个文件中的函数既可以被本文件中其他函数调用, ...

  2. 黑马程序员--C语言基础之--变量、内部函数与外部函数

    ------IOS培训期待与您交流! ------- 一.变量 变量代表着一个有名字的.具有特定属性的一个存储单元,运行期间,变量的值是可以改变的.变量必须先定义,后使用.定义时,指定该变量的名字与类 ...

  3. C语言内部函数与外部函数

    内部函数与外部函数的区分标准是,该函数能否被其他源文件调用. 内部函数 如果一个函数只能被本文件中的其他函数调用,称为内部函数.在定义内部函数的时候,在函数名和函数类型的前面加static,即: st ...

  4. C语言中全局变量和局部变量,内部函数和外部函数的区别

    1.局部变量和全局变量 1.局部变量:即在函数代码块中内部定义的变量名,只在此函数范围内有效.(只在子程序内定义和作用) 在c语言中,局部变量可以和全局变量重名,但是局部变量会覆盖全局变量,从而在引用 ...

  5. c 语言 内部函数与外部函数,C语言-内部函数与外部函数.doc

    C语言-内部函数与外部函数 吩算彭毙摊鬼笺选瓦瑞疡呐缴识曹研酥腹怕语透逆谓撮渴聋脐壤本精俄漏煎电米履详醋捐丧减掩敷挣煮阜祖锁锨溃睹喉爪冯耍缀示瞎嘴允戏馅径俊窗嚣节愈娶涩睡给峪凄灼助凝棍妻凌瞬诵攻枝溜甥 ...

  6. keil 函数 默认 外部 内部 博客_5.9 C++内部函数与外部函数

    点击上方"C语言入门到精通",选择置顶 第一时间关注程序猿身边的故事 作者 闫小林 白天搬砖,晚上做梦.我有故事,你有酒么? C++内部函数在C++中,根据函数能否被其他源文件调用 ...

  7. c语言打开外部doc文件,C语言-内部函和外部函数.doc

    C语言-内部函和外部函数 8.10 内部函数和外部函数?函数本质上是全局的,因为一个函数要被另外的函数调用,但是,也可以指定函数根据函数能否被其他源文件调用,将函数区分为内部函数和外部函数. 8.10 ...

  8. c语言中的extern_7.6 C语言内部函数和外部函数

    01关于变量的声明和定义 1.一个函数一般由两部分组成:声明部分和执行语句. 2.对变量而言,声明与定义的关系稍微复杂一些.在声明部分出现的变量有两种情况:一种是需要建立存储空间的,另一种是不需要建立 ...

  9. C语言中的内部函数与外部函数

    内部函数: 如果一个函数只能被本文件中其它函数所调用,它称为内部函数.在定义内部函数时,在函数名和函数类型的前面加static.即 static 类型标识符 函数名 (形参表) 如: static i ...

最新文章

  1. Docker - Install docker on CentOS
  2. HDU1212(大数取模-秦九昭算法)
  3. vs系列自带的localdb数据库当做数据库
  4. ubuntu16.04 svn搭建多项目搭建多个版本仓
  5. python 查看当前目录_「Python」打包分发工具setuptools学习
  6. asp手机拍照显示_会员动态飞凯材料120吨TFTLCD混合液晶显示项目,建后五年达产...
  7. c语言python零基础教学_编程零基础应当如何开始学习 Python?
  8. s信网页版rver定时任务mysql_DataX Web2.0发布,集成定时任务,支持分布式
  9. 读取topic数据存储到文件内
  10. 怎么开启计算机的无线网络,笔记本怎么开启无线投屏
  11. 数据分析软件SPSS22的授权及汉化
  12. layoutit+Bootstrap html页面布局+CSS
  13. 使用Scrapy爬取电影链接
  14. 一些著名软件的开发语言概述
  15. 鼓励师加成太刺激,鼻血喷了半斤,代码不一会儿就写完了...
  16. 计算机专业顶岗实训,计算机专业学生的顶岗实习
  17. 文本处理命令 cat more less cut wc sort uniq
  18. linux文件重命名命令
  19. uniapp小程序发布过程中,图片跟音频资源超过200K无法上传
  20. 10项目管理--项目沟通管理

热门文章

  1. 基于c语言测井原始数据编程,C语言对数据库文件的信息压缩
  2. java使用jco连接sap调用rfc函数,环境配置+代码
  3. 基于Java的QQ屏幕截图工具的设计与实现(论文+PPT+源码)
  4. WPF登录界面及程序主界面设计
  5. Mac OS下fis3 安装教程
  6. JSP PreparedStatement.setDate
  7. 北大青鸟汉字注释机内码_消防维修北大青鸟消防主机汉字注释如何书写?
  8. 实值函数相对于向量和矩阵的梯度
  9. 笔记本整机性能测试软件,整机性能测试
  10. Android app开发入门复习一(1-2章)