代码改变世界

老马识途-习题-1.1-1.3

2014-03-18 00:57  撞破南墙  阅读(614)  评论(0编辑  收藏  举报
1.1.1 分析多维数组的结构和寻址方式

因为之前就知道了答案,所以只用验证即可。

多维数组的结构C语言的表示的形式如下A[a1][a2]

A[2][3]

00(11)

01(22)

02(33)

10(44)

11(55)

12(66)

其实际为线性布局,

00

01

02

10

11

12

A[X][Y]

寻址方式=A的基址+X*a2+Y

其中三维类比于立体。

A[X][Y][Z]于A[a1][a2][a3]

寻址方式=A的基址+X*a2*a3+Y*a3+Z

高维以此类推

wps_clip_image-26701

wps_clip_image-13183

1.1.2 指针加1移动了多少字节?

指针加1应该是移动该指针类型所占的单位,这样的移动才有意义也才“智能”。

使用上面的代码验证。

wps_clip_image-20909

wps_clip_image-22728

1.1.3 Bool类型的长度和真假值

wps_clip_image-15286

长度为1个字节

wps_clip_image-4765