答案是:22
分析:
char a='1'b='2'; //赋值,注意a b的类型为char
printf("%c",b++); //以字符型打印打印b后b才自加,所以是现打
//印出“2”后
//b的ASCII码值是50,自加后是51
printf("%d\n",b-a) //这句是b的ASCII码值减去a的ASCII码值后
//以整型输出,即51-49=2,所以输出“2”
输出结果
2
2
main()
{ char a='1',b='2';
printf("%c\n",b++);
//按字符输出b,此时b为"2"(b的asc码是50),b再自加1(即50加1为51,是'3'),其实是ASC码自加:b=b+1=“3”;
printf("%d\n",b-a);
//这时候执行b-a也就等与字符:'3'-'1'=2(即:52-50= 2)。(ASC2码值相减)
}
输出结果 22
main()
{ char a='1',b='2';
printf("%c",b++);
//按字符输出b后(即"2"),b再自加1:b=b+1=“3”;
printf("%d\n",b-a);
//这时候执行b-a也就等与字符:'3'-'1'=2。(ASC2码值相减)
}
22 第一个2是字符第二个2是数字
printf("%c",b++);先输出b,再b++,b变成'3'了
printf("%d\n",b-a);b-a也就是'3'-'1'=2