- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
前言
•函数一旦被定义,就可以被其他函数调用。
但是当一个源程序由多个源文件组成时,
在一个源文件中定义的函数能否被其他的源
文件中的函数调用呢?为此,语言又把函
数分为两类:函数和外部函数。
函数
•在一个源文件中定义的函数只能被本文件中的函数
调用,而不能被同一源程序其它文件中的函数调用,这
种函数称为函数。
•定义函数的一般形式是:
static类型说明符函数名([形参表])
•例如:
staticintf(inta,intb);/*函数前面加static关键字*/
{
……
}
函数的延伸
•函数也称之为静态函数,但此处静态
的含义并不是指方式,而是指对函数
的调用范围只局限于本文件,因此在不同的源
文件中定义同名的函数不会引起。
•通常把只由同一个文件使用的函数和外部
变量放在一个文件中,前面加上使之局部
化,其他文件不能。
外部函数
•外部函数在整个源程序中都有效,只要在定义函数时,前面
加上extern关键字即可。
•其定义的一般形式为:
extern类型说明符函数名([形参表])
•例如:
externintf(inta,intb)
{
……
}
外外部部函函数数的的延延伸伸
•因为函数与函数之间都是并列的,函数不能嵌套定义,所以函
数在本质上都具有外部性质。因此在定义函数时省去了
说明符时,则隐含为外部函数。
•可以说,先前咱们学过的例子中使用的函数都是外部函数。
•如果定义为外部函数,不仅可以被定义它的源文件调用,而且
可以被其他的文件中的函数调用,即其作用范围是不只局限于
本源文件,而是整个程序的所有文件。
•在一个源文件的函数中调用其他源文件中定义的外部函数时,
通常使用来说明被调函数为外部函数。
范例
Main函数
•从开始学习语言至今,我们就一直使用着函数,
都知道一个程序必须有,并且只能有一个主函数,
它也被称之为是程序的,缺了它,编译器就会报
错。程序的执行总是从函数开始的。这里对
函数做一个详细的说明。
Main函数
C程序的执行总从main函数开始;
注意:
⑴main函数可以调用其他函数,但其他函数不能调用main函数。main
函数也不能调用自己。
⑵main函数可以带有两个参数,其一般形式是:
intmain(intargc,char*argv[])
{
函数体
}
函数的扩展
•函数的形是从哪里得到的?
•如果熟悉类似的行命令操作系统的话,就知道使用计算
机命令是在提示符后面输入相应令名;如果有参数,就
输入相应的参数(如文件名等),并且命令与各参数之间用
空格隔开,最后按下键运行该命令即可。
•同样,用户编写的程序经过编译、连接后形成的可执行文
件,就可以像命令一样使用,其后面当然也可以跟命令行的参
数,这个参数是要作为函数的参数传递给相应程序的。
范例
综合应用—用截弦法求方程的根
编写一个程序,实现用截弦法求方程
在区间内的根。
文档评论(0)