【C 语言】指针间接赋值 ( 间接赋值三要素 | 间接赋值 使用的三种场景 )
生活随笔
收集整理的這篇文章主要介紹了
【C 语言】指针间接赋值 ( 间接赋值三要素 | 间接赋值 使用的三种场景 )
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
文章目錄
- 一、間接賦值三要素
- 二、間接賦值 使用場(chǎng)景
- 1、① ② ③ 都在同一個(gè)函數(shù)中
- 2、① ② 在一個(gè)函數(shù)中 ③ 在另一個(gè)函數(shù)中
一、間接賦值三要素
三要素總結(jié) : ① 定義實(shí)參和形參 ; ② 實(shí)參地址賦值給形參 ; ③ 使用形參指針修改實(shí)參值 ;
間接賦值 333 大要素 :
- 要素 ① : 定義 實(shí)際變量 ( 實(shí)參 ) , 以及接收 實(shí)際變量 地址的 指針參數(shù) ( 形參 ) ; 如果 實(shí)際變量 是普通類型 , 則對(duì)應(yīng)實(shí)參是 一級(jí)指針 , 如果 實(shí)際變量 是 一級(jí)指針 , 則實(shí)參是 二級(jí)指針 ;
- 要素 ② : 將 實(shí)際變量 ( 實(shí)參 ) 地址 , 賦值給 形參 指針 ;
- 要素 ③ : 使用 形參指針 修改 實(shí)際變量 ( 實(shí)參 ) 的值 ;
二、間接賦值 使用場(chǎng)景
上述 間接賦值 333 要素 ,
- ① 定義實(shí)參和形參 ;
- ② 實(shí)參地址賦值給形參 ;
- ③ 使用形參指針修改實(shí)參值 ;
在不同場(chǎng)景的組合 , 產(chǎn)生了 333 種 語(yǔ)法現(xiàn)象 ;
- 語(yǔ)法現(xiàn)象 一 : ① ② ③ 都在同一個(gè)函數(shù)中 ;
- 語(yǔ)法現(xiàn)象 二 : ① ② 在一個(gè)函數(shù)中 , ③ 在另一個(gè)函數(shù)中 ; ( 最常見 )
- 語(yǔ)法現(xiàn)象 三 : ① 在一個(gè)函數(shù)中 , ② ③ 在另一個(gè)函數(shù)中 ; ( 初始化函數(shù)常用 )
1、① ② ③ 都在同一個(gè)函數(shù)中
#include <stdio.h> #include <stdlib.h>int main() {// 定義普通變量int a = 0;// 聲明指針變量 , 并為其設(shè)置 NULL 初始值// NULL 就是 0char *p = NULL;// 將 a 的地址賦值給 指針變量 pp = &a;// 通過指針 簡(jiǎn)介修改 變量 a 的值// * 符號(hào)可以看做 內(nèi)存空間 的鑰匙 , 可通過地址找到內(nèi)存*p = 20;// 打印 a 變量值printf("a = %d\n", a);return 0; }
2、① ② 在一個(gè)函數(shù)中 ③ 在另一個(gè)函數(shù)中
#include <stdio.h> #include <stdlib.h>/** 在本函數(shù)中, 將傳入的 p 指針指向的地址* 對(duì)應(yīng)的 數(shù)據(jù) 修改為 30*/ void modify_a(int *p) {*p = 30; }int main() {// 定義普通變量int a = 0;// 聲明指針變量 , 并為其設(shè)置 NULL 初始值// NULL 就是 0int *p = NULL;// 將 a 的地址賦值給 指針變量 pp = &a;// 調(diào)用 modify_a 函數(shù) , 在該函數(shù)中修改 a 變量的值modify_a(p);// 打印 a 變量值printf("a = %d\n", a);return 0; }
總結(jié)
以上是生活随笔為你收集整理的【C 语言】指针间接赋值 ( 间接赋值三要素 | 间接赋值 使用的三种场景 )的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【C 语言】指针间接赋值 ( 指针作为
- 下一篇: 【C 语言】字符串操作 ( C 字符串