|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 2316829671 于 2019-2-26 23:06 编辑
- #include <stdio.h>
- void func(int b[][3]);
- void func(int b[][3])
- {
- printf("%d\n", b[2][2]);
- }
- int main(void)
- {
- int a[3][4] = {
- {1, 2, 3, 4},
- {5, 6, 7, 8},
- {9, 10, 11, 12}
- };
- func(a);
- return 0;
- }
复制代码
传向func函数中的参数到底是什么
本帖最后由 jackz007 于 2019-2-26 23:56 编辑
传入 func() 的是二维数组 a 的首地址,内容依序为: 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12,相当于连续存储的一维数组。
在 func() 中,b 被声明为末维为 3 的二维数组,所以,b[2][2] 相当于 b[3 * 2 + 2] = b[8],恰好就应该是 9
|
|