然后把代码改改~其实可以不设指针数组集的单位长度限制~~~~
可以读取不同数据长度的数据~不过这样要防止越界才行~~
可以读取不同数据长度的数据~不过这样要防止越界才行~~
程序代码:
#include<stdio.h> int main() { int a[][3]={{10,20,30},{40,50,60},{70,80,90}}; char b[][4]={{'a','b','c','d'},{'e','f','g','h'},{'i','j','k','l'},{'m','n','o','p'}}; void* (*p[2])[]={0}; int i=0; int j=0; (int (*)[sizeof(*a)/sizeof(**a)])p[0]=(int (*)[sizeof(*a)/sizeof(**a)])a; (char (*)[sizeof(*b)/sizeof(**b)])p[1]=(char (*)[sizeof(*b)/sizeof(**b)])b; for (i=0;i<sizeof(a)/sizeof(*a);++i) for (j=0;j<sizeof(*a)/sizeof(**a);++j) printf("%-4d",((int (*)[sizeof(*a)/sizeof(**a)])p[0])[j][i]); puts(""); for (i=0;i<sizeof(b)/sizeof(*b);++i) for (j=0;j<sizeof(*b)/sizeof(**b);++j) printf("%-4c",((char (*)[sizeof(*b)/sizeof(**b)])p[1])[j][i]); puts(""); return 0; }
[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]