C语言使用数组名变址访问N行M列二维数组元素

各位兄弟姐妹,程序中%xh看不懂是干啥的,运行结果是什么意思,看不懂啊,求大家帮帮忙解释解释!

img

题主你好,c语言中printf()函数括号里面,用引号引起来的部分是格式,引号外面是参数列表。

  • %x 是按十六进制的格式输出,比如输出的 12ff50 ,%xh呢,就是输出结果后面带一个h(hexadecimal翻译十六进制),这里是为了提示输出的是十六进制格式 那么为什么会输出12ff50h呢,因为*(a+i)+j 表示的是a[i][j]的地址,这里是把a[i][j]的地址按16进制输出了。32位编译系统地址都占4个字节的内存,也就是32位,c语言用4位2进制表示一个16进制,所以,输出的16进制数是8位
  • %d是按十进制整型输出,%5d意思是,输出至少占5位,不足5位在前面补空格,如果超过5位,正常输出。

还有什么问题,可以继续问我哈
希望采纳谢谢

供参考:https://baike.baidu.com/item/printf%28%29/402521?fr=aladdin