C++ 中的 signed 和 unsigned 关键字是什么?
C++ 中的所有数字类型都可以有或没有符号。例如,你可以将 int 声明为仅表示正整数。除非另有说明,否则所有整数数据类型都是带符号的数据类型,即它们的值可以为正或负。可以使用 unsigned 关键字声明没有符号的变量。
示例
#include<iostream> using namespace std; int main() { unsigned int i = -1; int x = i; cout << i << ", " << x; return 0; }
输出
这将给出输出 -
4294967295, -1
之所以给出该输出,是因为它通过将二进制表示中的所有 0 更改为 1 并打印 int 的最大值来溢出 int。这是因为现在的 int i 不带符号。 但是 x 带符号,因此它将仅具有值 -1。
广告