完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
|
相关推荐
1个回答
|
|
1、函数调用
C语言程序中函数是可以互相调用的(注意:主函数是唯一一个不能被调用的函数)。所谓函数调用就是在一个函数的执行过程中,引用另外一个已经定义或声明了的函数(注意:函数必须先声明后调用)。主调函数调用被调函数的一般形式为: 函数名(实际参数表列) 说明如下: 函数名:指出被调用的函数 实际参数列表:实际参数列表中可以包含多个实际参数,各个参数之间用逗号隔开。实际参数的作用是将它的值传递给被调用函数中的形式参数。需要注意的是:函数调用中的实际参数与函数定义中的形式参数必须在数量、类型及顺序上严格保持一致,这样才能确保正确地进行参数传递。否则在执行过程中会出现错误。如果调用的是无参函数,则可以没有实际参数表列,但圆括号()不能省略。 2、C语言中可以采用三种方式实现函数的调用 1)函数语句调用 在主调函数中将函数作为一条语句,例如: sum(); 这是无参函数的调用,它不要求被调函数返回一个确定的值 2)函数表达式调用 被调函数作为语句的一部分,只要求它完成一定的操作。 在主调函数中将函数调用作为一个运算对象直接出现在表达式中,这种表达式称为函数表达式。例如 P0=sum(2,3); 这其实是一条赋值语句,在这条语句中包含了函数调用,在这里将被调用函数的返回值赋给P0,因此这种函数调用方式要求被调函数返回一个确定的值。 3)作为函数参数调用 在主调函数中将函数调用作为另一个函数调用的实际参数。例如 sum=max(a,num(b,c)); 这种在调用一个函数的过程中,又调用了另外一个函数的方式,称为函数的嵌套。 3、对被调函数的说明 在一个函数中调用另一个函数(即被调函数),需要具备如下条件: 1)被调函数必须是已经存在的函数(库函数或者是在该函数之前被定义或声明过的函数) 2)如果程序中使用了库函数,或者使用不在同一文件中的自定义函数,则需要在程序的开头用#include预处理命令将调用有关函数时所需的信息文件包含到本程序中。对于自定义函数,如果不是在本文本中定义的,那么在程序开始时要用extern修饰符进行原型声明。 4、本例演示一个既带参数,又有返回值的函数调用实例, 5、在keil c51中新建工程ex27,输入如下的程序代码,编译并生成ex27.hex文件 //实例27:函数参数及返回值综合演示实验,通过P0口显示 #include // unsigned char sum(unsigned char num1,unsigned char num2) //函数返回值类型为无符号字符型 { unsigned char num3; //定义变量 num3 = num1 + num2; //求和 return (num3); //返回值 } void main(void) { P0 = sum(22,33); //值送P0口显示 while(1) { } } 6、在proteus中新建仿真文件ex27.dsn,原理图如下图所示 7、将ex27.hex文件载入at89c51中,启动仿真,运行结果如下图所示 |
|
|
|
只有小组成员才能发言,加入小组>>
2513 浏览 0 评论
1085浏览 2评论
700浏览 1评论
453浏览 0评论
194浏览 0评论
330浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 10:05 , Processed in 1.327050 second(s), Total 81, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号