C语言 形参、实参

定义

形参

形式上的参数,没有确定的值

实参

实际存在的,已经确定的参数,常量,变量,表达式,都是实参

区别

实参的值不随形参的变化而变化

在C语言中,数据传送是单向的,即只能把实参的值值传递给形参,但形参的变化不会改变实参的值,我们可以简单理解,就相当于把实参的值 复制给了另一个数(形参),而另一个数的改变不会改变原来数(实参)的值,正规来说:他们在内存中位于不同的位置,形参将实参的内容复制一份,在该函数运行结束的时候形参被释放,而实参内容不会改变。

实参传递给形参的参数个数类型和顺序都应相同

实参传递给形参的参数个数类型和顺序都应相同,否则会系统强制转换,出现数据丢失或者 "类型不匹配"的错误。

如果实参是数组名,那么形参传递的之就是地址的值

在C里面 是无法做到形参改变 实参值同步改变的

如果要用函数改变实参的值,可以用指针作为参数来改变。

形参和实参虽然可以同名,但它们之间是相互独立的,互不影响,因为实参在函数外部有效,而形参在函数内部有效

相关推荐
承渊政道9 分钟前
C++学习之旅【unordered_map和unordered_set的使⽤以及哈希表的实现】
c语言·c++·学习·哈希算法·散列表·hash-index
智者知已应修善业42 分钟前
【花费最少钱加油到最后(样例数据推敲)】2024-11-18
c语言·c++·经验分享·笔记·算法
饿了就去喝水1 小时前
C语言笔试程序题
c语言·数据结构·算法
爱编码的小八嘎1 小时前
C语言完美演绎3-7
c语言
Yupureki1 小时前
《算法竞赛从入门到国奖》算法基础:数据结构-并查集
c语言·数据结构·c++·算法
艾莉丝努力练剑1 小时前
静态地址重定位与动态地址重定位:Linux操作系统的视角
java·linux·运维·服务器·c语言·开发语言·c++
像污秽一样3 小时前
算法设计与分析-算法效率分析基础-习题1.1
c语言·数据结构·c++·算法
Felven4 小时前
C. Dora and Search
c语言·开发语言
炒鸡菜66612 小时前
程序人生-Hello’s P2P
c语言·程序人生·职场和发展
2401_8846022712 小时前
程序人生-Hello’s P2P
c语言·c++