C語言指標知識點
- C語言
- 關注:2.56W次
引導語:在資訊工程中,指標是一個用來指示一個記憶體地址的計算機語言的變數或中央處理器(CPU)中的暫存器(Register)。以下是本站小編分享給大家的C語言指標知識點,歡迎閱讀!
【考點1】指標變數
指標變數是用來儲存地址的,而一般變數是儲存數值的。指標變數可指向任意一種資料型別,但不管它指向的資料佔用多少位元組,一個指標變數佔用四個位元組。
【考點2】指標變數的定義
格式為:型別名 *指標變數名。二維指標int **p;可以理解為基型別為(int *)型別。
【考點3】指標變數的初始化
指標變數在使用前必須要初始化,把一個具體的地址賦給它,否則引用時會有副作用,如果不指向任何資料就賦“空值”NULL。
指標變數兩種初始化
方法一:int a=2,*p=&a;(定義的同時初始化)
方法二:int a=2,*p; (定義之後初始化)
p=&a;
【考點4】指標變數的引用
&是取地址符,*是間接訪問運算子,它們是互逆的兩個運算子。在指標變數名前加間接訪問運算子就等價它所指向的量。
【考點5】指標的運算
int *p 中 *p 和p 的.差別:
*p 可以當做變數來用;*的作用是取後面地址p 裡面的數值
p 是當作地址來使用。
*p++ 和(*p)++的之間的差別:改錯題目中很重要
*p++是地址會變化。
(*p)++ 是數值會要變化。
三名主義:(考試的重點)
陣列名:表示第一個元素的地址。陣列名不可以自加,他是地址常量名。(考了很多次)
函式名:表示該函式的入口地址。
字串常量名:表示第一個字元的地址。
指標變數是存放地址的。並且指向哪個就等價哪個,所有出現*p 的地方都可以用它等價的代替指向的變數。
例如:int a=2,*p=&a;
*p=*p+2;
(由於*p 指向變數a,所以指向哪個就等價哪個,這裡*p 等價於a,可以相當於是a=a+2)
- 文章版權屬於文章作者所有,轉載請註明 https://xuezhezhai.com/zh-tw/jsj/cyuyan/jvwqlq.html