0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

C语言函数调用的形式及过程

jf_78858299 来源:C语言 作者:闫小林 2023-03-10 14:28 次阅读

C语言函数调用的形式

一般形式

  • 函数名(实参表列)

函数调用语句

  • 把函数调用单独作为一个语句。

函数参数

  • 函数调用作为另一个函数调用时的实参。

调用函数并不一定要求包括分号。

  • 只有作为函数调用语句才需要有分号。如果作为函数表达式或函数参数,函数调用本身是不必有分号的。

C语言函数调用时的数据传递

在调用有参函数时,主调函数和被调函数之间有数据传递关系。

在定义函数时函数名后面括号中的变量称为“形式参数”或“虚拟参数”;在主调函数中调用一个函数时,函数名后面括号中的参数称为“实际参数”。

在调用函数过程中发生的实参与形参间的数据传递,称为“虚实结合”。

实参可以是常量、变量或表达式,实参与形参的类型应相同或赋值兼容。

C语言函数调用的过程

  1. 在定义函数中指定的形参,在未出现函数调用时,它们并不是占内存中的存储单元。
  2. 将实参对应的值传递给形参。
  3. 通过return语句将函数值带回到主调函数。
  4. 调用结束,形参单元被释放。
  5. 实参向形参的数据传递是“值传递”,单向传递,只能由实参传给形参,而不能由形参传给实参。

C语言函数的返回值

函数的返回值是通过函数中的return语句获得的。

函数值的类型,应当在定义函数时指定函数值的类型。

在定义函数时指定的函数类型一般应该和return语句中的表达式类型一致。

函数类型决定返回值类型。

C语言函数调用案例

#include//头文件
int maxNumber(int num1,int num2);//函数声明
int main()//主函数
{
int num1,num2;
printf("请输入两个数:");
scanf("%d %d",&num1,&num2);
int max=maxNumber(num1,num2);//函数调用
printf("%d\\n",max);
return 0;//函数返回值为0
}
int maxNumber(int num1,int num2)//自定义比较大小函数
{
int max;
if(num1>num2)
{
max=num1;
}
else
{
max=num2;
}
return max;
}

编译运行结果:

请输入两个数:4 9
9

--------------------------------
Process exited after6.124 secondswith return value0
请按任意键继续. . .
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • C语言
    +关注

    关注

    180

    文章

    7533

    浏览量

    128783
  • 函数
    +关注

    关注

    3

    文章

    3882

    浏览量

    61310
  • 数据传递
    +关注

    关注

    1

    文章

    3

    浏览量

    1723
收藏 人收藏

    评论

    相关推荐

    C语言函数调用过程中的内存变化解析

    相信很多编程新手村的同学们都会有一个疑问:C 语言如何调用函数的呢?局部变量的作用域为什么仅限于函数内?这个调用不是指C
    的头像 发表于 12-11 16:21 3466次阅读

    怎么在C语言调用系统指令

    如果需要在C语言调用系统指令,经常使用system函数,操作简单方便,很容易理解。
    发表于 09-06 14:50 434次阅读

    C语言使用函数调用的知识点

    C语言使用函数调用,我们再熟悉不过了,但是函数调用在内存中究竟发生了什么真的清楚吗?只有搞清楚内存里的内幕,才算完全搞懂
    发表于 09-07 11:47 670次阅读

    C语言 第5章 函数 5-1-3 函数调用过程形式

    C语言
    电子学习
    发布于 :2022年12月27日 21:50:21

    在LabVIEW中调用C语言——调用函数节点

    在LabVIEW中调用C语言——调用函数节点学习LabVIEW也有一段时间了,从C
    发表于 04-20 09:14

    C语言函数是什么?

    地开发特定平台的应用程序。比如作为Windows应用程序的开发者,应尽量熟悉Windows SDK;作为Linux应用程序开发者,应尽量熟悉Linux系统调用和POSIX函数规范。  学习C
    发表于 01-07 18:05

    关于labview调用c语言函数节点的说明,包括c语言节点的创建

    关于labview调用c语言函数节点的说明,包括c语言节点的创建
    发表于 07-20 14:06

    C语言函数如何调用

    C语言函数如何调用
    发表于 10-18 09:06

    C++教程之函数的递归调用

    C++教程之函数的递归调用 在执行函数 f 的过程中,又要调用 f 函数本身,称为
    发表于 05-15 18:00 35次下载

    系统调用函数库分析及实例

    作为用户我们极少接触系统调用,但是我们熟悉C 语言,对库函数调用并不陌生。C语言支持一系列库函数
    发表于 06-23 16:46 46次下载
    系统<b class='flag-5'>调用</b><b class='flag-5'>函数</b>库分析及实例

    C语言形式参数和实际参数的介绍

    C语言函数参数的传递和值返回 实际程序中,我们经常使用到带参数有返回值的函数。 一、函数参数传递 1.形式参数和实际参数
    发表于 11-21 11:25 6次下载

    C语言函数调用的三种方式

    C 语言是一门面向过程的编程语言,通过一个又一个函数,把计算、过程控制等逻辑,包装成一个个独立的处理单元。
    发表于 10-08 14:18 5259次阅读

    C语言使用函数调用在内存中究竟发生了什么?

    C语言使用函数调用,我们再熟悉不过了,但是函数调用在内存中究竟发生了什么真的清楚吗?只有搞清楚内存里的内幕,才算完全搞懂
    的头像 发表于 01-13 14:09 748次阅读

    系统调用与普通的函数调用之间的区别

    函数之间是可以相互调用的,这很简单很happy有没有。 要知道是代码、是函数就可以相互调用,不管你用什么语言写的。
    的头像 发表于 02-15 11:47 3038次阅读
    系统<b class='flag-5'>调用</b>与普通的<b class='flag-5'>函数</b><b class='flag-5'>调用</b>之间的区别

    什么是函数调用

    函数调用,就是使用我们已经定义好的函数,或者C语言自带的库函数
    的头像 发表于 04-04 17:21 4126次阅读