你的*p只是一级指针,怎么能写成二级指针呢,所以是错的,不能够那样写
printf("%2d-%2d ",h,*(p+i*6+j)); /*这里输入显示illegal indirection*/
这个是8*6的数组,即a[8][6]
出现这个illegal indirection的原因一般是在非指针量之前加上了“*” 符号
我们应该区分*的两个用途,一是作为乘法运算符,二是作为指针运算符号。
如果没有定义指针,就使用*,就会被理解为乘法运算符,这时就很有可能出现illegal indirection这种错误。