> 其他 >
无符号变量和有符号变量的区别
What`s the difference between the unsigned integer and the signed integer?(in c++)
人气:396 ℃ 时间:2020-04-25 22:47:03
解答
In C/C++ and some other language (e.g. Java), integers r stored in the memory using 2's complement notation.
For positive integers, their 2's complement notation is of no difference from their binary representation.
Negative integers r slightly more complicated. To achieve their 2's complement notation, u can:
1. get the binary representation of its absolute value;
2. add 1 to that representation.
Of course, there're restrictions of limited memory space.
In this way, negative integers r stored in the memory in quite a same way as positive ones.
e.g. 1111 1111 = -1;
However, for a unsigned integer, it is assumed that no negative integers r stored, i.e. all the numbers r stored using their binary representation. In this case, 1111 1111 = 255.
完全原创,看不懂的话补充说明或者叫我翻译.
推荐
猜你喜欢
© 2024 79432.Com All Rights Reserved.
电脑版|手机版