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

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

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

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

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

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

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

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

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

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

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

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

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

相关推荐
xskukuku4 小时前
使用VSCode配置C语言运行环境
c语言·ide·vscode
想吃火锅10056 小时前
【leetcode】405.数字转换为十六进制数js
开发语言·javascript·ecmascript
专注VB编程开发20年6 小时前
AI 生成C# WinForm 窗体 = 目前就是垃圾
开发语言·人工智能·c#
cfm_29146 小时前
JVM GC垃圾回收初步了解
java·开发语言·jvm
~小先生~7 小时前
Python从入门到放弃(一)
开发语言·python
许彰午7 小时前
17_synchronized关键字深度解析
java·开发语言
z落落7 小时前
C# 泛型接口和泛型类+泛型约束
开发语言·c#
阿正的梦工坊7 小时前
【Rust】02-变量、不可变性与基础类型
开发语言·后端·rust
阿正的梦工坊7 小时前
【Rust】08-集合类型、字符串与迭代器入门
开发语言·rust·c#
FuckPatience8 小时前
C# 使用泛型协变将派生类类型替换为基类类型
开发语言·c#