我目前正在用C语言编写程序。我的程序中声明了变量i
。我已将其初始化为:
unsigned char i = 0x00;
接下来,我有一个while循环,在while循环中,我将unsigned char
增加16并将其显示为七位数(例如0000080
)。好吧,这对前16个值完全正常,但只要unsigned char
到达00000f0
并再次递增,它就会回到0000000
。为什么这样,我如何更改我的代码来解决这个问题?提前谢谢。
答案 0 :(得分:7)
假设8位到一个字节,<classpathentry exported="true" kind="lib" path="/home/lbullen/Documents/eclipse/plugins/org.junit.jupiter.engine_5.0.0.v20170910-2246.jar"/>
的最大值为255(0xff)。任何超过该算术运算的算术运算都将被模数256截断。
如果您想支持更大的值,请改用unsigned char
。