
c语言问题(求解释)
c语言问题(求解释)c语言该程序输出结果是什么并解释(求详细解释)#include<stdio.h>voidmain(){union{intig[4];chara[8];...
c语言问题(求解释)c语言该程序输出结果是什么并解释(求详细解释)#include<stdio.h>
void main()
{
union
{
int ig[4];
char a[8];
}t;
t.ig[0]=0x4241;
t.ig[1]=0x4443;
t.ig[2]=0x4645;
t.ig[3]=0x0000;
printf("\n%s\n",t.a);
} 展开
void main()
{
union
{
int ig[4];
char a[8];
}t;
t.ig[0]=0x4241;
t.ig[1]=0x4443;
t.ig[2]=0x4645;
t.ig[3]=0x0000;
printf("\n%s\n",t.a);
} 展开
1个回答
展开全部
输出BADCFE
因为0x42是B的ascii码,其他的同理。
printf t.a,会把t.a当作一个字符串输出,遇到0结束。
因为0x42是B的ascii码,其他的同理。
printf t.a,会把t.a当作一个字符串输出,遇到0结束。
更多追问追答
追问
答案是ABCDEF
不是将0x4241看成一个吗?将0x4241看为0x42和0x41吗?为什么呢?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询