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。

更新于:2020-02-10

2K+ 次浏览

开启你的 事业

完成培训课程即可获得认证

开始
广告