应该可以的,可能你这个数有点问题,,char 还是int还是浮点型。也可以把这几句单独在调试一下,就一目了然了。 |
billaj 发表于 2023-11-4 15:53 你贴的代码确实只比较了低16位,也可能高16位都一样,前面另外判断了,代码不全不能确定。 |
难道是CASE只能是16位??? |
wulin 发表于 2023-11-3 18:54 但是你说的跟楼主描述的完全相反,uint32_t在STM8编译器里面是long,不符合你的要求,但是人家好用。在MDK里面是unsigned int类型,楼主的数据最高位都是0,也就是说都是正数,与int类型完全等效。 |
switch()括号中只可以允许int、char、bool、enum类型,别的类型不可以。 |
在MDK中,右键项目,弹出options for target,然后在c/c++标签中的Misc Controls里面加上“--asm”就可以输出汇编文件了,在obj目录里面的s文件就是c语言对应的汇编。 |
可以看一下生成的汇编代码。 |