广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C++中形参和实参的区别是什么
  • 373
分享到

C++中形参和实参的区别是什么

2023-07-05 04:07:35 373人浏览 独家记忆
摘要

今天小编给大家分享一下c++中形参和实参的区别是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。C++中形参和实参的区别之

今天小编给大家分享一下c++中形参和实参的区别是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

    C++中形参和实参的区别

    之前一直搞不清楚实参和形参的真正含义,总是搞混。现在,看了教材和一些优秀的博客,稍微明白了他们之间的区别。

    用于接收传递值的变量被称为形参。

    传递给函数的值被称为实参。

    • C++标准使用参数(argument)来表示实参,使用参量(parameter)来表示形参,因此参数传递是将参数赋给参量。

    • 形参出现在函数定义的地方,多个形参之间以逗号分隔,形参规定了一个函数所接受数据的类型和数量。

    • 实参出现在函数调用的地方,实参的数量与类型与形参一样,实参用于初始化形参。

    • 形参出现在函数定义中,在整个函数体内都可以使用, 离开该函数则不能使用。实参出现在主调函数中,进入被调函数后,实参变量也不能使用。 形参和实参的功能是作数据传送。发生函数调用时, 主调函数把实参的

    • 值传送给被调函数的形参从而实现主调函数向被调函数的数据传送。

    • 形参变量只有在被调用时才分配内存单元,在调用结束时, 即刻释放所分配的内存单元。因此,形参只有在函数内部有效。 函数调用结束返回主调函数后则不能再使用该形参变量。

    • 实参可以是常量、变量、表达式、函数等, 无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值, 以便把这些值传送给形参。 因此应预先用赋值,输入等办法使实参获得确定值。

    • 实参和形参在数量上,类型上,顺序上应严格一致, 否则会发生“类型不匹配”的错误。

    • 函数调用中发生的数据传送是单向的。即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。 因此在函数调用过程中,形参的值发生改变,而实参中的值不会变化。

    函数的参数(形参与实参)的理解

    函数的参数

    • 实际参数(实参)

    真实传给函数的参数,叫实参。实参可以是:常量、变量、表达式、函数等。无论实参是何种类型的量,在进行函数调用时,它们必须有确定的值,以便把这些值传送给形参。

    • 形式参数(形参)

    形式参数是指函数名后括号中的变量。因为形式参数只有在函数被调用的过程中才实例化(分配内存单元),所以叫形式参数。形式参数当函数调用完成之后就自动销毁了。因此形式参数只在函数中有效。

    我们写一段代码感受一下:

    #include<stdio.h>#include<stdlib.h>void Swap1(int x, int y){int tmp = 0;tmp = x;x = y;y = tmp;}void Swap2(int *px, int *py){int tmp = 0;tmp = *px;*px = *py;*py = tmp;}int main(){int num1 = 1;int num2 = 2;Swap1(num1, num2);printf("%d %d\n", num1, num2);Swap2(&num1, &num2);printf("%d %d\n", num1, num2);system("pause");return 0;}

    输出结果:

    C++中形参和实参的区别是什么

    上面Swap1和Swap2函数中的参数想x,y,px,py都是形式参数。在main函数中传给Swap1的num1和num2和传 给Swap2函数的&num1,&num2是实际参数。

    让我们对函数的形参与实参进行分析:

    C++中形参和实参的区别是什么

    代码对应的内存分配:

    C++中形参和实参的区别是什么

    这里可以看到Swap1函数在调用的时候,x,y拥有自己的空间,同时拥有了和实参一模一样的内容。所以我们可以 简单的认为:形参实例化之后其实相当于实参的一份临时拷贝。

    以上就是“C++中形参和实参的区别是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网其他教程频道。

    --结束END--

    本文标题: C++中形参和实参的区别是什么

    本文链接: https://www.lsjlt.com/news/349644.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • C++中形参和实参的区别是什么
      今天小编给大家分享一下C++中形参和实参的区别是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。C++中形参和实参的区别之...
      99+
      2023-07-05
    • php形参和实参的区别是什么
      本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑函数的参数分为两种:形参和实参形参:形式参数,不具有实际意义的参数,是在函数声明定义时使用的参数实参:实际参数,具有实际数据意义的参数,是在函数调用时使用的参数1. 形...
      99+
      2017-03-31
      php 形参 实参
    • C语言形参和实参有什么区别
      本篇文章和大家了解一下C语言形参和实参有什么区别。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。C语言是一种高级编程语言,其最重要的特点之一是它允许程序员使用函数来组织代码。函数是一组相关的指令的集合,可以在程序中多次调用...
      99+
      2023-07-06
    • C++中形参和实参的区别及说明
      目录C++中形参和实参的区别函数的参数(形参与实参)的理解函数的参数总结C++中形参和实参的区别 之前一直搞不清楚实参和形参的真正含义,总是搞混。现在,看了教材和一些优秀的博客,稍微...
      99+
      2023-02-22
      C++中形参 C++中实参 形参和实参区别
    • C语言形参和实参的区别详解
      目录形参和实参的定义形参和实参的作用形参和实参的传递方式传值调用指针调用形参和实参的默认值总结C语言是一种高级编程语言,其最重要的特点之一是它允许程序员使用函数来组织代码。函数是一组...
      99+
      2023-05-20
      C语言 形参 实参
    • php形参和实参的区别有哪些
      这篇文章将为大家详细讲解有关php形参和实参的区别有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。区别:1、形参是定义函数时函数名后面括号内的若干个参数,实参是调用函数时函数名后面括号中的若干个参数;...
      99+
      2023-06-21
    • java中有参和无参的区别是什么
      在Java中,有参和无参的区别主要在于方法的参数列表。以下是两者的区别: 无参方法:无参方法是指在定义方法时,没有任何参数传递给...
      99+
      2023-10-23
      Java
    • C语言中如何实现形参和实参
      本篇内容介绍了“C语言中如何实现形参和实参”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!形式参数和实际参数函数的参数分为形参和实参两种。在本...
      99+
      2023-06-16
    • C语言形参与实参使用的差别讲解
      目录前言形参(形式参数)实参(实际参数)形参和实参的区别和联系前言 如果把函数比喻成一台机器,那么参数就是原材料,返回值就是最终产品;从一定程度上讲,函数的作用就是根据不同的参数产生...
      99+
      2023-02-11
      C语言形参与实参 C语言形参 C语言实参
    • Python函数值传递、引用传递、形式参数和实际参数的区别是什么
      本篇内容主要讲解“Python函数值传递、引用传递、形式参数和实际参数的区别是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python函数值传递、引用传递、形式参数和实际参数的区别是什么”...
      99+
      2023-06-30
    • vue中传参params和data的区别是什么
      今天小编给大家分享一下vue中传参params和data的区别是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1、使用d...
      99+
      2023-06-30
    • axios请求中以params或body形式传递参数的区别是什么
      今天小编给大家分享一下axios请求中以params或body形式传递参数的区别是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解...
      99+
      2023-07-05
    • php的形式参数与实际参数是什么意思
      这篇文章主要介绍“php的形式参数与实际参数是什么意思”,在日常操作中,相信很多人在php的形式参数与实际参数是什么意思问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php的形式参数与实际参数是什么意思”的疑...
      99+
      2023-06-20
    • Python函数值传递引用传递及形式参数和实际参数的区别
      通常情况下,定义函数时都会选择有参数的函数形式,函数参数的作用是传递数据给函数,令其对接收的数据做具体的操作处理。 在使用函数时,经常会用到形式参数(简称“形参&rdqu...
      99+
      2022-11-11
    • vue中传参params和data的区别
      目录1、使用data传参2、使用params传参3、总而言之1、使用data传参 前端请求方式为post import request from '@/utils/request' ...
      99+
      2022-11-13
    • 四种C#参数类型分别是什么
      这篇文章将为大家详细讲解有关四种C#参数类型分别是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。C#参数类型有四种:值类型引用类型输出类型数组型参数C#参数类型(1):值参数所谓值参数,...
      99+
      2023-06-17
    • C++和C中const的区别是什么
      本篇内容介绍了“C++和C中const的区别是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!const,这个词字面意思为:常数。这就表示...
      99+
      2023-06-21
    • JavaScript arguments和剩余参数有什么区别
      这篇文章主要讲解了“JavaScript arguments和剩余参数有什么区别”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaScript argu...
      99+
      2022-10-19
    • python的函数形参和返回值是什么
      这篇文章主要介绍了python的函数形参和返回值是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python的函数形参和返回值是什么文章都会有所收获,下面我们一起来看看吧。函数的返回值一个函数执行后可以返回...
      99+
      2023-06-29
    • c# 圆形识别方案和直线识别方案的参考示例
      目录圆形识别方案直线识别方案圆形识别方案 识别流程 判断是否为封闭图形; 根据圆的方程,取输入点集中的1/6、3/6、5/6处的三个点,求得圆的方程,获取圆心及半径; ...
      99+
      2022-11-11
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作