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