STM32中0x1u 0u的含义 | 您所在的位置:网站首页 › pinc是什么意思 › STM32中0x1u 0u的含义 |
今天见到这种函数,查了一些他们的含义 后缀就是告诉编译器该常数的属性。 默认为有符号INT型,加了u就是无符号的,加了l就是long型。 做下移位就知道结果了。以0x80为例,左移次数过多编译器会提示你符号位被改变,即负数被移位成正数。加个u的话就被编译器识别为无符号数,可以随意移位。不会影响符号位。 例如: C语言里面0x8000000000000000u这样的常数一律默认为int型,不是什么字节。至于int型是4字节还是2字节那就是编译器的问题了。加u尾缀并不会扩展常数占用的字节数,加ul才会从int型长度扩展成long型长度。 个人理解: 也就是说0x00是int型,0x00u是无符号int型,0x00ul长整型 |
CopyRight 2018-2019 实验室设备网 版权所有 |