一、指針
如果在程序中定義一個(gè)變量,在對(duì)程序進(jìn)行編譯,系統(tǒng)會(huì)自動(dòng)給這個(gè)變量分配內(nèi)存單元,根據(jù)不同的類型,分配不同長(zhǎng)度的空間,如int占用4個(gè)字節(jié),char占用1個(gè)字節(jié),
c中指針指針、指針的指針、指針數(shù)組和數(shù)組指針
。內(nèi)存單元中每個(gè)字節(jié)都有編號(hào),這就是地址。由于可通過地址能夠找到所需的變量單元,可以說地址指向該變量單元。打個(gè)比方,一個(gè)房間的門口掛了一個(gè)房間號(hào)301,這個(gè)301就是房間的地址,將該地址形象化為指針。對(duì)于一個(gè)內(nèi)存單元來說,單元的地址(編號(hào))即為指針,其中存放的數(shù)據(jù)才是該單元的內(nèi)容。嚴(yán)格地說,一個(gè)指針是一個(gè)地址,是一個(gè)常量,
電腦資料
《c中指針指針、指針的指針、指針數(shù)組和數(shù)組指針》(http://www.lotusphilosophies.com)。而一個(gè)指針變量卻可以被賦予不同的指針值,是變量。但常把指針變量簡(jiǎn)稱為指針。為了避免混淆,約定:“指針”是指地址,是常量,“指針變量”是指取值為地址的變量。定義指針的目的是為了通過指針去訪問內(nèi)存單元。例如:
int a=12;
int *p=&a;
二、指針的指針(二級(jí)指針)
簡(jiǎn)單來說,二級(jí)指針變量就是一級(jí)指針變量的地址。
例如:
int a=12;
int *p=&a;
int **=&p;