指標和陣列

2021-08-10 05:28:22 字數 1015 閱讀 8553

指標

指標是一種特殊的型別,指標變數是指標型別的變數,變數中存放的是另乙個變數位址,指標有兩個值,乙個是它自身的值,也就是它存放的位址,另乙個是它所指向的值,就是她存放的實體地址所對因的變數的值;

int a=1;int *p=&a;//把a的位址存放在p中

指標型別的大小可以用sizeof()計算出來,//sizeof(int *) sizeof(char *)....

可以得知,指標型別的大小都為四位元組

我們在定義乙個指標變數時,一定要初始化;

在釋放指標變數所指向的變數時,同樣也要給指標b變數賦空(null)

指標同樣也有void *型別的指標

如void *p=null;

void *型別的指標叫做無型別指標

無型別指標可以接收任何型別的指標

如:int a=0;

char b='a';

floaf c=12.23;

void *p=&a;

p=&b;

p=&c;

都可以,同時也可以接收自身的指標//p=&p;

但是其他型別指標接收無型別指標時候,必須強轉,

void *p=&a;

char *pi=(char)p;

陣列是相同資料型別的元素按一定順序排列的集合,

定義int ar[10];

陣列初始化

int ar[04]=;

int ar1[10]=;

int ar 2={};

int ar3="hello";

陣列和指標在訪問時都可以以的形式,例如

int *a=1;

printf("%d",a);

int ar=;

printf("%c",ar[1])

陣列和指標訪問時編譯器都會識別為指標的形式引用

引用是給變數起別名,

int a=1;int &b=a;//b是a的引用,a和b其實指的是同乙個變數,實體地址相同

指標和引用的區別

指多級指標引用無多級引用

指標陣列和陣列指標

有關陣列指標和指標陣列容易混淆,本文舉例說明兩者的區別,並加以分析。基本概念 指標 inta 1 int p a 指標的指標 int p2p p 簡單陣列 intb 20 指標陣列 int p 10 指標陣列,含有10個指標元素,即每乙個元素都是乙個指標 陣列指標 int p 10 這個指標用來指向...

指標陣列和陣列指標

理解這兩個概念,當從語言學的語法角度開始,定語 名詞,即 的 語句。指標陣列 指標的陣列 陣列指標 陣列的指標。一 指標陣列 元素為指標的陣列 顧名思義,就是說的首先是乙個陣列吧,然後陣列的元素是指標而已。說明形式為 type pointer array constant1 constant2 co...

指標陣列和陣列指標

該文時自己對指標陣列用法的一點總結,還望高手指點不足原文如下 由於以前對指標陣列不太明白,所以自己寫了 乙個小的測試程式來驗證了自己的猜測,先總結如下 指標陣列,由名字就可以知道的該陣列中的成員都是為指標的。其定義的方法為 char p 5 該初定義乙個包含5個char 型別的陣列的指標,由於p本身...