zoukankan      html  css  js  c++  java
  • C语言 0x7fffffff是多少(也就是INT_MAX,首位是 0,其余都是1,f代表1111)

    可以算一下 0x7FFFFFFF 是多少
    每个十六进制数4bit,因此8位16进制是4个字节,刚好是一个int整型

    F的二进制码为 1111
    7的二进制码为 0111

    这样一来,整个整数 0x7FFFFFFF 的二进制表示就是除了首位是 0,其余都是1
    就是说,这是最大的整型数 int(因为第一位是符号位,0 表示他是正数)

    用 INT_MAX 常量可以替代这个值。

    INT_MIN在标准头文件limits.h中定义

    #define INT_MAX 2147483647
    #define INT_MIN (-INT_MAX - 1)

    在C/C++语言中,不能够直接使用-2147483648来代替最小负数,因为这不是一个数字,而是一个表达式。表达式的意思是对整数21473648取负,但是2147483648已经溢出了int的上限,所以定义为(-INT_MAX -1)。

    C中int类型是32位的,范围是-2147483648到2147483647 。 
    (1)最轻微的上溢是INT_MAX + 1 :结果是 INT_MIN; 
    (2)最严重的上溢是INT_MAX + INT_MAX :结果是-2; 
    (3)最轻微的下溢是INT_MIN - 1:结果是是INT_MAX; 
    (4)最严重的下溢是INT_MIN + INT_MIN:结果是0 。

  • 相关阅读:
    linux命令整理
    各种提权姿势总结
    常用端口信息说明和利用
    近年来爆发的CVE漏洞编号
    一个优秀的SSH远程终端工具
    python-读写文件的方式
    kali安装ssh服务
    一套实用的渗透测试岗位面试题
    使用 python快速搭建http服务
    asciinema使用
  • 原文地址:https://www.cnblogs.com/souhaite/p/12874242.html
Copyright © 2011-2022 走看看