C語(yǔ)言什么是指針數(shù)組
在C語(yǔ)言中一個(gè)數(shù)組,若其元素均為指針類(lèi)型數(shù)據(jù),稱(chēng)為指針數(shù)組,也就是說(shuō),指針數(shù)組中的每一個(gè)元素都存放一個(gè)地址,相當(dāng)于一個(gè)指針變量。
一般形式
類(lèi)型名 *數(shù)組名[數(shù)組長(zhǎng)度];
//如
int *point[4];
類(lèi)型中應(yīng)包括符合*,如int *表示是指向整數(shù)數(shù)據(jù)的指針類(lèi)型。
由于[ ]比優(yōu)先級(jí)高,因此point先和[4]結(jié)合,形成p[4]形式,這顯然是數(shù)組形式,表示point數(shù)組有4個(gè)元素。然后再和point前面的結(jié)合,*表示此數(shù)組是指針類(lèi)型的,每個(gè)數(shù)組元素都可以指向一個(gè)整型變量。
C語(yǔ)言指向指針數(shù)據(jù)的指針
//定義一個(gè)指向指針數(shù)據(jù)的指針變量:
char **point;
point的前面有兩個(gè)*號(hào)。 運(yùn)算符的結(jié)合性是從右到左,因此**point相當(dāng)于 (point),顯然point是指針變量的定義形式 。
C語(yǔ)言指針數(shù)組作main函數(shù)的參數(shù)
main函數(shù)的第一行一般寫(xiě)成
int main()
或
int main(void)
括號(hào)中是空的或void,表示main函數(shù)沒(méi)有參數(shù),調(diào)用main函數(shù)時(shí)不必給出實(shí)參。
在某些情況下,main函數(shù)可以有參數(shù),例如:int main(int argc,char *argv[])其中,argc和argv就是main函數(shù)的形參,他們是程序的“命令行參數(shù)”。
命令行的一般形式
命令名 參數(shù)1 參數(shù)2……參數(shù)n
C語(yǔ)言指向指針的指針
#include
int main()
{
int number =100;
int *p1 = &number;//一級(jí)指針
int **p2 = &p1;//二級(jí)指針
int ***p3 = &p2;//三級(jí)指針
printf("%d\\n",number);
printf("%d\\n",*p1);
printf("%d\\n",**p2);
printf("%d\\n",***p3);
return 0;
}
編譯運(yùn)行結(jié)果:
100
100
100
100
--------------------------------
Process exited after3.526 secondswith return value0
請(qǐng)按任意鍵繼續(xù). . .
-
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
7030瀏覽量
89035 -
C語(yǔ)言
+關(guān)注
關(guān)注
180文章
7604瀏覽量
136827 -
指針
+關(guān)注
關(guān)注
1文章
480瀏覽量
70563
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論