C語言認識(二)指標

2021-09-09 01:45:44 字數 1238 閱讀 4785

指標 *

int main()

*p認為是一級指標;p存的是a的位址

指標又稱為間接訪問符。

typedef查詢一下。

基本變數可以進行混合運算。

混合型別 陣列、指標等

基本型別不能和混合型別進行運算。

無論是 int *p;還是 char *p1;double *p2;

指標的大小是固定的,由cpu大小決定。32bit電腦對應 4位元組

64bit電腦對應8位元組。

*p不能給野指標賦值;!!!一定要初始化;

intx = 0;

int*p =

null

;//#define null 0; if

(p !=

null

){}//

這裡不能用 (p != 0)//有時null = 0xffffffff;

陣列:ar[10]

陣列名就是陣列的地址,指的是陣列首位位址;也是常量

ar[i]; //=> *(ar + i);

i[ar]; //=> *(i + ar);

ar[i]; // => *(ar + i) => (ar + sizeof(int)*i);

int *p = &ar[0]; // int *p = ar;

cout << p[i] << " " << *(p + i) << " " << i[p] << endl;

下標前的不一定時陣列名哦。可能是乙個指標。

陣列名在做形參的時候可以退化為指標;

失效指標

不能把區域性變數的位址反饋出來,函式生存期結束,位址失效,指標變成失效指標。

int* getint()

int main()

C語言 二 指標

一 指標概述 1.簡介 2.初始化 1 先定義後初始化 int a 10 int p p a 2 定義並初始化 int a 10 int p a 備註 在資料型別後,變數名稱前的 是乙個說明符,用來說明該變數是乙個指標變數。如果前面沒有資料型別,如 p,這裡的 是乙個指標運算子,用來取出指標變數所指...

c語言基礎(二)指標篇

定義乙個int型別的變數i int i 10 定義乙個int型別的一級指標變數 int p 把i對應的位址賦給p變數 p i 指標取值 p 把p變數對應的位址的值取出來 printf p d p 首先我們定義的指標變數p,其實p就是用來存放位址的,我們把i的位址賦給p,那麼p的值其實就是i的位址,p...

帶你認識指標(二) 指標與陣列

接著上篇部落格說,上篇部落格我們已經知道了什麼是指標,也明白了他的用途,這次我們就來看看指標和陣列之間有什麼奇妙的關係 我們都知道陣列是儲存在一塊連續的儲存空間中,也就是他可以表示一塊連續的記憶體,我們需要得到陣列中的某個元素,可以利用陣列的下標,還可以如何得到呢?指標可以操作位址,所以說,我們完全...