0x表示是十六进制的数,后面的ABCDEF分别表示十、十一、十二、十三、十四、十五m\n都是十六进制数 0xabc相对应的十进制数为2748 (oxabc是十六进制数,0123是八进制数;) m-=n;相当于m=m-n;(-=称为自反赋值运算) m=2748-2748 所以m=0
最后,printf("%X\n",m);意即将m按%X\n(%X\n表示按十六进制输出,并换行,0的对应十六进制即0),所以屏幕输出0 换行
十六进制输出的时候好象并不用0x
十六进制输出0的时候好象并不用0x