最近在对C语言中的指针进行学习时遇到一些困惑,想麻烦郭老师帮忙看看,谢谢。
考虑以下一段代码:
int (*ptr) [2] ;
int torf[2][2] = {12,14,16} ;
ptr = torf ;
不解之处罗列如下:
▶ * * ptr 与 * * ( ptr + 1) 如何理解?
▶ 易知,torf[1] 可以表示 torf[1][0] 的地址,那么,*(ptr+1) 可以吗?
▶ ( int * )torf, int ( * torf), ( int * )ptr, int ( * ptr) 都是合法的吗?如果合法,是什么意思?