关于0xffffffff 到底是什么意思?

关于0xffffffff 到底是什么意思?0x16进制一个f代表4个1, 所以就是2进制的32个1.但是运行一下下面这个代码就会发现输出的是-1#includeusingnamespacestd;intmain(){inti=0xffffffff;cout<

大家好,又见面了,我是你们的朋友全栈君。

0x16进制

一个f代表4个1, 

所以就是2进制的32个1.

但是运行一下下面这个代码就会发现输出的是-1

#include <iostream>

using namespace std;

int main()
{
    int i = 0xffffffff;
    cout << i << endl;
    return 0;
}


结果是 -1 




因为int 为带符号类型,带符号类型最高为是符号位,又因为0xFFFFFFFF,也就是四个字节32 bits全是1, 符号位是1,所以这个数是负数。




内存中的数值为补码表示,所以0xFFFFFFFF是一个负数的补码。负数从补码求原码,最高符号位不变,保持 1, 其余各位求反,末尾加1,也就是 0xFFFFFFFF,二进制为:11111111 11111111 11111111 11111111 




->  10000000 00000000 00000000 00000000


->  10000000 00000000 00000000 00000001




原码首位表示符号位,其余位表示绝对值大小,所以,这个数是 -1

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/145354.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 动态规划之背包问题(C语言)

    动态规划之背包问题(C语言)动态规划动态规划(英语:Dynamicprogramming,简称DP)是一种通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。动态规划常常适用于有重叠子问题和最优子结构性质的问题动态规划思想大致上为:若要解一个给定问题,我们需要解其不同部分(即子问题),再合并子问题的解以得出原问题的解。由于通常许多子问题非常相似,为此动态规划法试图仅仅解决每个子问题一次,从而减少计算

    2022年7月14日
    25
  • 1123581321递归算法_线性递归数列例题

    1123581321递归算法_线性递归数列例题[BZOJ3231][Sdoi2008]递归数列题目大意给定Ci,i∈[1,k]给定C_i,i\in[1,k]定义若i>k,Ai=Ai−1∗C1+Ai−2∗C2+⋯+Ai−k∗Ck若i>k,A_i=A_{i-1}*C_1+A_{i-2}*C_2+\cdots+A_{i-k}*C_k否则Ai=Bi否则A_i=B_i询问sum(A)n−sum(A)m−1询问sum(A)_n-sum(A

    2025年10月30日
    4
  • mysql的sql语句优化5种方式_MySQL数据库优化

    mysql的sql语句优化5种方式_MySQL数据库优化1、建表语句+联合索引CREATETABLE`student`(`id`int(10)NOTNULL,`name`varchar(20)NOTNULL,`age`int(10)NOTNULL,`sex`int(11)DEFAULTNULL,`address`varchar(100)DEFAULTNULL,`phone`varchar(100)DEFAULTNULL,`create_time`timestamp.

    2022年8月20日
    8
  • java 转为Calendar_java Calendar和Date()的转化

    java 转为Calendar_java Calendar和Date()的转化在使用过程中发现,publicstaticvoidmain(Stringargs[]){Datedate=newDate();System.out.println(date.getYear();}输出结果为:114而且getYear()方法已经不再建议使用。于是想到Calendar。正确方式为:publicstaticvoidmain(Stringargs[]){Da…

    2022年6月7日
    56
  • 彩色图和深度图转点云

    彩色图和深度图转点云环境:windows10、VS2013、opencv2.49、openNi、PCL1.8opencv环境搭建参考https://www.cnblogs.com/cuteshongshong/p/4057193.htmlhttps://blog.csdn.net/u013105549/article/details/50493069PCL1.8+openNi搭建参考https://blog.cs…

    2022年4月25日
    38
  • input.nextInt();简单使用讲解

    input.nextInt();简单使用讲解完整的写法是先导入输入流类Scannerimportjava.util.Scanner;然后使用输入流,按照你的问题中的写法名称应该这样使用Scanner这个类Scannerinput=newScanner(System.in);//创建输入流对象inputintuserNum=input.nextInt();//使用输入流对

    2025年7月3日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号