C语言 形参、实参

定义

形参

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

实参

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

区别

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

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

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

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

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

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

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

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

相关推荐
Aurorar0rua7 小时前
CS50 x 2024 Notes C - 09
c语言·开发语言·学习方法
相醉为友8 小时前
040 Linux/裸机/RTOS 项目开发的跨平台兼容性——C语言静态接口抽象底层原理分析
linux·c语言·mcu
weixin_421725269 小时前
2026年C/C++/C#全解析:底层语言的进化与场景抉择,选错直接掉队
c语言·c++·c·编程语言·技术选择
bucenggaibian10 小时前
Nearoh:9年开发者从零造语言,Python的简洁+C的性能
c语言·python·开发者·编程语言·nearoh
水饺编程10 小时前
第5章,[标签 Win32] :设备的尺寸(三)
c语言·c++·windows·visual studio
努力努力再努力wz10 小时前
【MySQL进阶系列】拒绝冗余SQL:带你透彻理解视图的底层逻辑
android·c语言·数据结构·数据库·c++·sql·mysql
Yupureki11 小时前
《Linux网络编程》4.应用层HTTP协议
linux·服务器·c语言·网络·c++·http
上弦月-编程11 小时前
C语言链表详解,新手也能看懂! ——从入门到精通的完整教程
java·c语言·c++
孬甭_11 小时前
文件操作详解
c语言
wuminyu21 小时前
专家视角看Java字节码加载与存储指令机制
java·linux·c语言·jvm·c++