CH32V203RBT6不能判断int类型变量的大小

使用CH32V203RBT6开发是发现不能判断int类型的大小,

Pressure=0x8000;//-32767

if(Pressure>2000)却成立;

求解



image.png



image.png

您好,int定义的变量类型是32位的,按照你的意思,应该是定义成16位有符号类型变量,可以定义成short试一下,如下图

image.png


楼主概念还不清晰呀。

一方面在32位系统上,int是4字节,所以0x8000就是32768,当然大于2000;另一方面,即使sizeof(int)是2的情况下,0x8000也是-32768,而非注释上的-32767。


不好意思,还停留在8位单片机的概念上,没想到32位里面int是32位


只有登录才能回复,可以选择微信账号登录