C语言| 函数参数传递指针

C语言| 拷贝传递(指针控制内存单元)-CSDN博客

【函数参数传指针和传数据的区别】

如果希望在另外一个函数中修改本函数中变量的值,那么在调用函数时只能传递该变量的地址。

1 普通变量,传递它的地址,可以直接操作该变量的内存空间。

举例 int i; //如果想传递 i 的地址,直接传递&i 就行。

2 指针变量, 指针变量本身就是地址,直接传过去就行。

如果要改变指针变量里面存放的地址,需要改变指针变量的指向,就必须要传递指针变量的地址。

在实际编程中,我们都是传递指针,满足以下条件才会传递数据:

1 数据很小,比如4字节的 int 型变量。

2 单纯使用它的值,不需要改变。

只要函数的参数不满足上面的条件,全部使用指针传递。

数组名本身就是地址,所以传递数组的话,直接传递数组名就行。

相关推荐
枫叶丹44 分钟前
【Qt开发】Qt的背景介绍(一)
开发语言·qt
菜鸟12号13 分钟前
详解Linux下多进程与多线程通信(一)
linux·c语言·嵌入式·进程与线程
JouJz17 分钟前
设计模式之单例模式:深入解析全局唯一对象的艺术
java·开发语言·spring·单例模式·设计模式·面试
不学会Ⅳ17 分钟前
轻量锁偏向锁重量锁害人不浅!synchronized源码!
java·开发语言
学不动CV了24 分钟前
深入理解C语言内存空间、函数指针(三)(重点是函数指针)
c语言·arm开发·数据库·stm32·单片机·嵌入式硬件·c#
new_zhou33 分钟前
QT5使用cmakelists引入Qt5Xlsx库并使用
开发语言·qt·qxlsx
2301_781143562 小时前
江协科技STM32入门教程——通信接口
c语言·嵌入式
定偶3 小时前
C语言中整数编码方式(原码、反码、补码)
c语言·数据结构·编辑器
笨笨马甲3 小时前
Qt 3D模块加载复杂模型
开发语言·qt·3d
胡西风_foxww6 小时前
Java的extends通配符
java·开发语言·通配符·extends