一、指標的定義、初始化及解引用
1、什麼是指標?
在對程式進行編譯時系統會給每個變數分配記憶體空間,在對乙個變數進行操作時,會先對它的記憶體空間進行定址,每乙個變數都有它自己的位址,指標就相當於變數位址,通過指標能找到變數的記憶體單元。
2、直接訪問和間接訪問
直接到變數名標識的儲存單元中讀取變數的值叫做「直接定址」
列如:
#include
intmain()
將變數a的位址存放到另一變數中,然後通過該變數找到變數a的位址,從而讀取變數a的值叫做「間接定址」
列如:
#include
intmain()
3、指標變數的定義和初始化
定義指標變數的一般形式為:型別名 *指標變數名;
列如:int *pa
int a;
int*pa;
float b;
pa=&a;
//指標變數pa的基型別和變數a的基型別相同,所以正確
pa=&b//指標變數pa的基型別和變數b的基型別不同,所以此操作錯誤
在同時定義多個指標變數時要在每個指標變數前都加∗
*∗列如:
int
*pa,
*ch;
在給指標變數進行初始化時可以在定義時進行,也可以在定義之後進行
列如:
int a=0;
int*pa=
&a;//在對指標變數進行定義對指標變數進行賦值
pa=&a;
//在對指標變數進行定義之後再對指標變數進行賦值;注意不能寫成 *pa=&a
在使用指標變數之前必須對指標變數進行初始化
列如錯誤編碼:
#include
intmain()
正確編碼:
#include
intmain()
使用指標變數訪問儲存單元中的資料
#include
intmain()
在定義指標變數時 int ∗
*∗pa; 指標變數是pa而不是 ∗
*∗pa;在定義指標變數之後的pa是指位址,∗
*∗pa是指指標變數pa所指的記憶體單元內的資料
C語言之指標(一)
指 針 是 一 個 特 殊 的 變 量 它 裡 面 存 儲 的 數 值 被 解 釋 成 為 內 存 裡 的 一 個 地 址 要 搞 清 一 個 指 針 需 要 搞 清 指 針 的 四 方 面 的 內 容 指 針 的 類 型 指 針 所 指 向 的類 型 指 針 的 值 或 者 叫 指 針 所 指 向...
C語言之指標
指標型別的本質分析 1 指標的本質 指標的本質 一種復合的資料型別。下面我將以下面幾個作為例子進行展開分析 a int p b int p c int parvalue 3 d int pfun 分析 所謂的資料型別就是具有某種資料特徵的東東,比如資料型別char,它的資料特徵就是它所佔據的記憶體為...
C語言之指標
指標的概念 什麼是指標?如果用一句話概括的的話那就是,乙個存放記憶體空間位址的變數。指標也是乙個變數,指標存放的內容是乙個位址,該位址指向乙個記憶體空間。指標變數的定義 int p 該變數用來存放乙個空間的位址。p 代表該指標指所指向記憶體空間中的值,切記指標只能存放有效的記憶體空間位址,不能存放其...