C++(unsigned)
unsigned 是 C++ 中的关键字,用于声明无符号整数类型。当应用于整数类型时,它表示该整数类型是无符号的,即不带正负号。
在 C++ 中,unsigned 通常与整数类型一同使用,如 unsigned int、unsigned short、unsigned long 等,用于表示非负整数。
例子:
#include <iostream>
int main() {
unsigned int positiveNumber = 42; // 无符号整数变量
std::cout << "Unsigned Integer: " << positiveNumber << std::endl;
return 0;
}
在上述示例中,unsigned int 用于声明一个无符号整数变量 positiveNumber,该变量只能存储非负整数值。使用 unsigned 有以下一些特点:
- 不带符号:
unsigned声明的整数类型不带正负号,只能表示非负整数(0 及正整数)。 - 范围加倍: 由于不需要存储正负号,
unsigned类型的整数可以表示的最大值是有符号整数相同位数的两倍。 - 溢出行为: 如果
unsigned类型的变量存储的结果溢出,它会进行模运算,即超出范围的值将被折叠到有效范围内。
#include <iostream>
int main() {
unsigned int x = 4294967295; // 最大的 32 位无符号整数
std::cout << "x: " << x << std::endl;
x = x + 1; // 溢出
std::cout << "After Overflow: " << x << std::endl; // 输出 0,发生了模运算
return 0;
}
在实际编程中,选择使用 unsigned 还是有符号整数类型取决于数据的实际含义。例如,当处理数组索引、位运算等场景时,unsigned 类型可能更为适用。

浙公网安备 33010602011771号