所有的偉大源於一個勇敢的開始 數據結構預備知識 指針 1.指針:是C語言的靈魂,指針=地址 地址:記憶體單元的編號 指針變數:存放記憶體單元地址的變數 int *p;//p是指針變數,int *表示該p變數只能存儲int類型變數的地址,不能存放別的類型的 int i=10; p=&i 詳細這兩部操作: ...
所有的偉大源於一個勇敢的開始
數據結構預備知識
指針
1.指針:是C語言的靈魂,指針=地址
地址:記憶體單元的編號
指針變數:存放記憶體單元地址的變數
int *p;//p是指針變數,int *表示該p變數只能存儲int類型變數的地址,不能存放別的類型的
int i=10;
p=&i
詳細這兩部操作:
1)、p存放了i的地址,所以我們說p指向了i
2)、p和i是完全不同的兩個變數,修改其中任意一個變數,另一個都不會有影響
3)、p指向i,*p就是i變數本身,更形象的說,所有出現*p的地方都可以換成i
2.無論指向的地址占幾個位元組,所有的指針變數只占4個位元組,用第一個位元組的地址表示整個變數的地址
指針與函數
函數內的變數是局部變數,如果參數是指針,那就能修改外部變數了
指針與數組
int a[5]={1,2,3,4,5}
a是個指針常亮,存放一維數組第一個元素的地址,它的值不能被改變,一維數組名指向的是數組的第一個元素
a[i] <==> *(a+i)