void指針平時用的地方很少,可是不表明它不重要數組
#include <stdio.h> typedef int*(*TY)[5]; //指針數組的指針類型 int main(void) { void *p1,*p2,*p3; int a1 = 100; int *px = &a1; //一級指針 int **py = &px; //二級指針 int a[5] = {1,2,3,4,5}; int *b[5] = {a,a+1,a+2,a+3,a+4}; //指針數組 p1 = &py; p2 = b; p3 = &b; printf("***(int***)p1 = %d \n",***(int***)p1); printf("**((int**)p2 + 1)) = %d \n",**((int**)p2 + 1)); printf("(((int**)p2)[1][0]) = %d \n",((int**)p2)[1][0]); printf("(*(TY)p3)[1][0] = %d \n",(*(TY)p3)[1][0]); printf("**(*(TY)p3 +1) = %d \n",**(*(TY)p3 +1)); return 0; }
代碼測試結果測試