首页 > 其他分享 >C语言 06 无符号数

C语言 06 无符号数

时间:2024-03-31 16:44:37浏览次数:20  
标签:char 06 符号 int 191 C语言 1111 4294967295

所有的数据底层都是采用二进制来进行保存的。
第一位用于保存符号位。
如果不考虑这个符号位,那么所有的数都是按照正数来表示。
比如考虑了符号位的 char 类型:

  • 考虑符号表示范围:-128 ~ 127
  • 不考虑符号:0 ~ 255

直接使用这些不带符号位的数据类型:

#include <stdio.h>

int main() {
    // 数据类型前面添加unsigned关键字表示采用无符号形式
    unsigned char c = -65;   
    // %u以无符号形式输出十进制数据
    printf("%u", c);    
}
191

来看看为什么得到的是 191 这个数字。

char 类型占据 1 个字节,8 个 bit 位:

-65 的补码形式 => 1011 1111

由于现在没有符号位,一律都是正数,所以:1011 1111 = 128 + 32 + 16 + 8 + 4 + 2 + 1 = 191

再来看看无符号 int 的最大值:

#include <stdio.h>

int main() {
    int i = -1;
    printf("%u", i);
}
4294967295

无符号 int 的最大值正是 4294967295。

int 类型占据 4 个字节,32 个 bit 位:

-1 的补码形式 => 1111 1111 1111 1111

由于现在没有符号位,一律都是正数,所以:1111 1111 1111 1111 = 2^31 + 2^30 + ......+ 2^1 + 2^0 = 4294967295

标签:char,06,符号,int,191,C语言,1111,4294967295
From: https://www.cnblogs.com/skysailstar/p/18106903

相关文章

  • C语言 05 变量与常量
    变量变量就像在数学中学习的x,y一样,可以直接声明一个变量,并利用这些变量进行基本的运算,声明变量的格式为:数据类型变量名称=初始值;(其中初始值可以不用在定义变量时设定)=是赋值操作,可以将等号后面的值赋值给前面的变量,等号后面可以直接写一个数字(常量)、变量名称、算式。比......
  • 初识C语言——函数
            哈喽呀,各位小伙伴,本肉段er~又来给大家送知识啦!不禁感慨一下,这两周的溜肉段er还是比较勤奋滴呢,嘻嘻嘻!    这一次,肉段er将为各位小伙伴们介绍一下C语言中的函数,包括函数是什么、函数的分类、函数的参数以及函数的声明和定义。请各位小伙伴跟随肉段e......
  • C语言02-常量、二进制、数据类型
    第4章常量1.常量特点程序运行时,其值不能改变的量,即为常量。2.常量分类字面量常量标识符常量3.常量定义方式(标识符常量)①#define宏定义②const关键字(C99标准增加)4.两种定义方式区别类型检查:const编译阶段会进行类型检查,#define方式不......
  • day06-文件操作相关
    1.文件操作在学习文件操作之前,先来回顾一下编码的相关以及相关数据类型的知识。字符串类型,在程序中用于表示文字信息,本质上是unicode编码中的二进制name="武沛齐"字节类型可表示文字信息,本质上是utf-8/gbk等编码的二进制name="武沛齐"data=name.encode("utf-8")prin......
  • 数据结构-C语言描述(队列的链表实现)
    概述在日常生活中,先进先出似乎更加符合我们的日常认知。 排队的人群中,队首的人总是先离开,而队尾的人总是后离开。1.队列的基本原理和操作我们知道队列也是一种线性表,而今天我们就用非顺序储存结构(链表)来实现它。首先我们先明确队列的基本操作原理:因为同时涉及到队首和队......
  • 初始C语言
    自我简绍:本人双非院校大一新生,集成电路设计与集成系统专业。我认为C语言是学习其他语言的基础,可以为以后学其他语言打好基础,很有必要好好学习学习,并且网上有很多项目都是开源的,可以很好的去实际。未来编程目标:首先将C语言系统的仔细学一下,然后再学学数据结构与算法。我想......
  • 练习3-2 计算符号函数的值
    对于任一整数n,符号函数sign(n)的定义如下:请编写程序计算该函数对任一输入整数的值。输入格式:输入在一行中给出整数n。输出格式:在一行中按照格式“sign(n)=函数值”输出该整数n对应的函数值。输入样例1:10输出样例1:sign(10)=1输入样例2:0输出样例2......
  • 【C语言】贪吃蛇【附源码】
    欢迎来到英杰社区https://bbs.csdn.net/topics/617804998一、游戏说明:一个基于C语言链表开发的贪吃蛇游戏:1.按方向键上下左右,可以实现蛇移动方向的改变。2.短时间长按方向键上下左右其中之一,可实现蛇向该方向的短时间加速移动。3.按空格键可实现暂停,暂停后按任意键继......
  • C语言 键盘输入与屏幕输出——数据的格式化屏幕输出
    目录顺序结构C语言如何实现数据的输入和输出?数据的格式化屏幕输出printf()格式字符printf()的格式修饰符顺序结构一般而言,顺序结构程序涉及如下三个基本操作:*输入数据*处理数据*输出数据顺序结构的特点 *自上而下,依次按顺序执行C语言如何实现数据的输入和输出?......
  • C语言实现半定规划(Semidefinite Programming, SDP)算法
    目录前言A.建议B.简介一代码实现A.半定规划的基本概念B.使用C语言进行半定规划建模二时空复杂度A.时间复杂度B.空间复杂度C.实际考虑三优缺点A.优点B.缺点C.总结四现实中的应用前言A.建议1.学习算法最重要的是理解算法的每一步,而不是记住算法。2.......