*(*(c+1)+1)

来源:百度知道 编辑:UC知道 时间:2024/06/21 06:20:26
(24)阅读下列程序,则执行后的结果为
#include "stdio.h"
main()
{ int c〔〕〔4〕={1,2,3,4,5,6,7,34,213,56,62,3,23,12,34,56};
printf("%x,%x\n",c〔2〕〔2〕,*(*(c+1)+1));
}
A)3e,6
B)62,5
C)56,5
D)3E,6
要具体解释,越详细越好!

你给数组c赋值有16个整数,数组第一维自动为4.数组是按行存贮的
即 1 2 3 4
5 6 7 34
213 56 62 3
23 12 34 56
以十六进制输出c【2】【2】的值,数组下标是从0开始的,即输出62的十六进制数,你自己将62转换成十六进制数.c语言规定数组名代表首地址,二维数组也是特殊的一维数组。c指向的是0行首地址,c+1指向一行首地址*(c+1)指向一行0列首地址,
*(c+1)+1指向一行一列首地址,*(*(c+1)+1)则是一行一列的值了,即6,转换成十六进制仍为6.十六进制的格式输出"%x",如果X为大写,则十六进制数a、b、c、d、e、f用大写表示,如果x为小写,则用小写表示。

1 条
你给数组c赋值有16个整数,数组第一维自动为4.数组是按行存贮的

以十六进制输出c 2 2 的值.