c和指標 指標基礎知識

2021-10-19 03:00:54 字數 1338 閱讀 2683

1  記憶體和位址

2  指標初始化  

3  指標變數的內容

4  間接訪問操作符

5  非法指標  、null指標

1 記憶體和位址

指標是儲存的位址,比如0x0, 0x1 , 0x2 ,可以這麼理解 指標可以狹義理解為記憶體位址,是存放記憶體位址的變數。

網上或者書上,總是一段很多字數去表示指標說什麼,剛開始學習時候,看到這麼多內容我頭疼,所以要理解性記憶, 比如你谷歌 指標:

2  指標初始化

在程式設計的世界中,你想去使用指標,就得去宣告(創造乙個指標),給他賦值才能去用他,這個很好理解,公司想找乙個程式設計師,你首先得宣告是個人,不管男的女的還是人妖,然後你有一些老闆需要的技能*(賦值),公司才能用。

宣告個a的變數,型別的是int,賦值是10,如果你想看這個變數的位址,需要加&

int a = 10;

printf("a=%d\n", a);

printf("a=%d\n", &a);

宣告了乙個變數名為b,int型別的指標(這裡*表示指標),把a的位址賦值給這個指標

int *b = &a;
3  指標變數的內容

如果想看指標變數的內容

printf("b = %d", b);
因為指標變數是是存放的位址,所以是結果肯定是 0x 的位址

4  間接訪問操作符

如果你想通過指標間接的訪問給他賦值的變數

printf(" b = %d", *a);
printf這裡的* 是表示間接訪問,相當於解引用,取a的值

5  非法指標  、null指標

非法指標,就是指一些不賦值位址而且其他一些數字等常量給指標,

比如 int *c = 99,  int *d  這些都是非法指標,

null指標是乙個特殊的指標,又叫做空指標,null指標指向的位址為0x00000000

以上是需要了解最基礎的內容,我們學習腦海中應該有一些結構圖,這樣容易去理解和記憶,有些知識是很容易遺忘的。

參考書籍是  《c和指標 》 第二版,有需要pdf私聊。

指標基礎知識

那麼編譯器就在記憶體中開闢1個整型單元存放變數a,我們假設這個整型單元在記憶體中的位址是 0x1000 那麼記憶體0x1000單元中存放了資料10,每次我們訪問a的時候,實際上都是訪問的0x1000單元中的10.現在定義 int p p a 當編譯器遇到語句int p時,它也會在記憶體中給指標變數p...

指標基礎知識

指標的基礎知識 一 空指標的定義方法 int p1 nullptr int p2 0 include int p3 null int c 0 int p4 c 此種方法是錯誤的,不能將int型變數直接賦值給指標,即使其值是0也不行這三種方法定義的空指標是等價的,只是第三種需要包含標頭檔案cstdli...

C語言基礎知識 指標

指標定義 資料型別 變數名 指標的定義 include int main include int main include int main printf a d,b d n a,b a 3,b 5 printf max d,min d n p1,p2 max 5,min 3 return 0 交換...