指標基礎概念

2021-07-11 15:03:55 字數 1856 閱讀 3078

第一節;簡述指標的一些概念

都是在c的語言基礎上的;本人開始細學指標,所以有錯誤或不嚴謹的地方請大家多多指出。

剛開始可能會有的暈,但詳細介紹的;

一;關於位址的一些概念

1。記憶體單元;在計算機中,所有的資料都是存放在記憶體中的,一般把記憶體中的乙個位元組稱為乙個記憶體單元,不同的資料型別所占用的記憶體單元數不一樣,如int占用4個位元組,char占用1個位元組。

2。記憶體單元的編號;為了正確地訪問這些記憶體單元,必須為每個記憶體單元編上號。每個記憶體單元的編號是唯一的,根據編號可以準確地找到該記憶體單元。單元編號也是有位址的,

3。指標;記憶體單元的編號叫做位址,也稱為指標。因此指標就是位址,是常量;(這裡就可以區分一下陣列名是否是常量了)

4。記憶體單元的指標與記憶體單元的內容是不同的兩個概念;這很容易區分的;記憶體單元的指標就是它的位址,就是它的編號;而記憶體單元的內容就是這個記憶體單元裡面的東西;

二;關於指標變數

1指標變數;指標變數是變數,是存放指標的變數;乙個指標變數的值就是某個記憶體單元的指標或者說是某個記憶體單元的位址;

2指標變數與指標是兩個完全不同的概念;但我們常常會把指標變數讀寫成指標;因此不要覺得奇怪;

3並且在指標變數使用前必須要有確定的指向即指標變數的初始化;這是使用指標最常見的錯誤,

三; & 與 *

&;取位址運算子。就是取位址用的。即&m;就是m變數在記憶體中的實際位址。&是一元運算子,規定&只能取記憶體(不要忘記還有一種可以寄存在暫存器中)中的變數的位址,也就是說通過使用&可以獲得相應變數的位址。不知道大家發現沒,我都是說的可以取變數的位址。那麼常量呢?

const;常量可以輸出它的位址例如;(const int a = 1;printf(「%p」,&a);)但是不能改變它的值,也就是說不能用(const int a = 1;scanf (「%d」,&a);)因為常量不能改變;並且const必須賦初值(注意const指向指標時可以不賦初值);下面都有事列驗證的;

define;說道常量與const是不是有人想到了# define i 10 ,是不是只要&i就會報錯;嘻嘻……補充一下,define這只是乙個巨集,只是乙個替換作用的,這種定義的量連位址都沒有,可以把他看成乙個替換的運算,從而也有了國二的巨集運算了;巨集運算就是簡單的替換,而不會四則運算,因此在使用是只要原樣替換就ok了。

哈哈;還有一點就是指標(這裡說的是指標變數)也是變數所以也可以用&來獲取指標變數的位址;

#include

//#define i 1//如果這樣定義那麼就會報錯說常量不能取位址;因為這裡是巨集,沒有位址的;

int main()

;看到應該不陌生吧;乘法就是用表示的,還有指標定義裡面也用了吧,這次我們所細說的*是取值運算子。它一般通過與指標結合使用,獲取指標所指向的變數的值。這個感覺沒什麼說的,就是取乙個位址裡面的內容;這個意思。

四;關於指標變數的一般形式;

型別說明符 * 變數名;

型別說明符;就是表示該指標變數指向的變數的資料型別,並且該指標只能指向該資料型別的變數。

變數名;表示指標變數的名字;

五;一些簡單的例子;

1;char * p ;//定義乙個指向char型別的指標變數型的,特別注意,指標(這裡就是指的指標變數)在使用前不但要定義更要初始化也就是要有指向才能使用;

2;int * p ;//也是同里可得;定義乙個指向int型別的指標變數型的

3;乙個簡單的指標的應用;

程式一;

#include

int main()

程式二;

#include

int main()

指標的概念

第一章。指標的概念 指標是乙個特殊的變數,它裡面儲存的數值被解釋成為記憶體裡的乙個位址。要搞清乙個指標需要搞清指標的四方面的內容 指標的型別,指標所指向的型別,指標的值或者叫指標所指向的記憶體區,還有指標本身所佔據的記憶體區。讓我們分別說明。先宣告幾個指標放著做例子 例一 1 int ptr 2 c...

指標概念綜述

1.變數的位址就是變數的指標,用於儲存位址的變數稱為指標變數。當將乙個變數的位址賦給某乙個指標變數時,稱這個指標變數指向該變數。此時,既可用變數名直接訪問變數的值,也可用指標變數間接訪問變數的值。2.c語言中的陣列變數 字串陣列變數 字串 結構體變數 共用體變數 列舉型變數,甚至函式名及函式的形參以...

指標有關概念

指標陣列 是乙個指向指標的陣列 int p 的優先順序高於 因此變數p先與結合,即p為一整形陣列,加上 成為指向指標的整形陣列。陣列指標 是乙個指向陣列的指標 int p 先與p結合,形成指標,即為乙個指標。後與結合,為乙個指向陣列的指標。函式指標 是乙個指向函式的指標 int p int n p先...