陣列指標應用

2021-07-12 06:27:48 字數 880 閱讀 3161

/*
用陣列指標,多種方式輸出a[2]
*/
#include#define l(a) sizeof(a)/sizeof(a[0])

typedef int arr_int[4];

int main()

; arr_int *p=&a;//陣列指標,*p的資料型別是4個int長

printf("%d\n",p[0][2]);//先獲取到a陣列的訪問權,在訪問a中的相對於首位址偏移量為2的數,即為a[2];

printf("%d\n",*(p[0]+2));//先獲取a的位址,然後在a的首位址+2,表示偏移2個位址到a[2],*()表示輸出位址對應的值

printf("%d\n",p[1][-2]);//p偏移乙個陣列指標位址,4個int。0 1 2 3 4 5 6 7 8 p指向4的位址,0--3記憶體的是a陣列的各個值,p左移兩個int位址指向a[2]

printf("%d++++\n",*(*p+2));

printf("%d\n",*(p[1]-2));

printf("%d\n",p[2][-6]);

printf("%d\n",p[3][-10]);

printf("%d\n",*(p[2]-6));

/* printf("%d....\n",*(p[0]));

printf("%d-------\n",p[0]);

printf("%d---\n",(*p));

printf("%d******\n",&a);*/

return 0;

}

指標陣列的應用

在實現排序功能的時候,一般都是通過交換值的形式,通過迴圈逐漸得到我們想要的順序。但是有時候排序通過值的交換實現起來比較麻煩,因此我們可以引用指標陣列,通過交換位址的方式來得到我們想要的順序。例 char a 4 10 將四個字串通過從小到大的順序依次排序,如果用交換值的形式,實現起來就會比較麻煩。但...

陣列指標與指標陣列的應用例項

一陣列指標的應用 include stdio.h typedef float a 10 定義乙個字元型含有十個元素的陣列型別a int main float farray 10 定義farray陣列 a pf farray pf陣列指標指向farray整個陣列的位址入口 int i 0 for i ...

指標陣列和陣列指標的理解與應用

指標陣列,即以指標為元素的陣列,其主要應用於選單的查詢 注意下面的例項 include intmenu int main if choice 0 choice 6 return0 int menu 效果圖 還有乙個就是關於表驅動的例項 include intadd int a,int b int m...