我的我的之前MDK上没有这种问题,,,可能在C251上已经不一样了, C51上需要加%bu这样的...能用了就行{:4_167:} llyymm 发表于 2023-12-22 17:21
按照你说的改了设置,重新建了一个简单的工程,结果还是一样的,改成printf("aa=%u,bb=%u,cc=%u)没有问题。 ...
我想到一种可能,251 是 16位机, 基本单位是 int, 默认都是 自动扩展到 int , 数据前面加强制转换, 应该可行 !
u8 AA=14,BB=15,CC=16
printf("AA=%bu,BB=%bu,CC=%bu\r\n",(u8)AA,(u8)BB,(u8)CC); LAOXU 发表于 2023-12-22 21:22
我想到一种可能,251 是 16位机, 基本单位是 int, 默认都是 自动扩展到 int , 数据前面加强制转换, 应该 ...
嗯,有可能,我这就测试一下{:4_165:} LAOXU 发表于 2023-12-22 21:22
我想到一种可能,251 是 16位机, 基本单位是 int, 默认都是 自动扩展到 int , 数据前面加强制转换, 应该 ...
确实解决了问题,但是“AA = %bu”,感觉这个b的意义不强了! 不管怎样你还是一针见血的指出了问题{:4_250:} llyymm 发表于 2023-12-23 15:06
确实解决了问题,但是“AA = %bu”,感觉这个b的意义不强了! 不管怎样你还是一针见血的指出了问题 ...
解决就好 {:victory:} 看到最后,是不是最终归结到数据在RAM里对齐方式上了?
页:
1
[2]