C语言 传址调用、二级指针做参数

简介: 空间的操作有两种: 名字,地址。如果传名字不行,传地址一定可以。如果使用变量改变函数外部的参数时,要定义全局变量,如果使用局部变量的话,并不能实现该功能。例如:(不能实现改变外部变量的值)

前言


如何通过函数参数修改外部变量的空间呢?


一、传址调用


空间的操作有两种: 名字,地址。如果传名字不行,传地址一定可以。


如果使用变量改变函数外部的参数时,要定义全局变量,如果使用局部变量的话,并不能实现该功能。例如:(不能实现改变外部变量的值)


b4efd042c62d748aa12e1c9a0186b4a.png

通过地址改变外部变量。a1e15dd304ea55ecaaaa95ff690be8e.png

如此,fun 内 p=&a, 所以 *p 就是外部的 a 了,可以修改。

即: 要修改谁,就传递谁的地址,叫做传址调用。


二、二级指针做参数


传递二级指针:

如果要修改指针的指向,那就修改指针的地址,如下:

0c12984499b9f28b0bd03585c93024a.png


相关文章
|
6天前
|
C语言
指针进阶(C语言终)
指针进阶(C语言终)
|
1天前
|
搜索推荐 程序员 C语言
指针赋值与引用传递:C语言的基础知识与实践技巧
指针赋值与引用传递:C语言的基础知识与实践技巧
|
6天前
|
编译器 C语言
指针进阶(数组指针 )(C语言)
指针进阶(数组指针 )(C语言)
|
8天前
|
存储 C语言
C语言的函数返回值和指针
C|函数返回值(区分各类值)和指针(区分各类存储空间)的细节
|
8天前
|
C语言
【C语言】:详解函数指针变量,函数指针数组及转移表
【C语言】:详解函数指针变量,函数指针数组及转移表
13 2
|
8天前
|
C语言
【C语言】:详解指针数组,数组指针及(二维)数组传参(2)
【C语言】:详解指针数组,数组指针及(二维)数组传参(2)
10 1
|
8天前
|
Serverless C语言
【C语言】:对(一维)数组与指针的深入理解(1)
【C语言】:对(一维)数组与指针的深入理解(1)
9 1
|
11天前
|
C语言
C语言----深入理解指针(5)(一)
C语言----深入理解指针(5)
15 2
|
11天前
|
C语言
C语言---深入指针(4)(二)
C语言---深入指针(4)
20 2
|
11天前
|
C语言
C语言---深入指针(4)(一)
C语言---深入指针(4)
13 1