热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

无符号整型和有符号整型的区别,以及无符号整型的使用

有符号整型:无符号整型:注意:无符号数据表示数量,只有正值unsigned无符号标识不会改变数据类型的字节大小无符号型数据

有符号整型:
在这里插入图片描述
无符号整型:
在这里插入图片描述
注意:


  1. 无符号数据表示数量,只有正值
  2. unsigned无符号标识不会改变数据类型的字节大小
  3. 无符号型数据打印要将之前的%d,全部替换成%u,如果在vs中没有注意转换,将无符号型用%d输出,那么编译器会做优化,将无符号型按有符号型进行输出,优化的前提是不写成:

unsigned int a = -10u;

在这里插入图片描述
在数据后面加了u,如果前面写了负号就会报错,因为明确了这是一个无符号整型
在这里插入图片描述
如果用%u输出一个负号整型,会出现乱码
在这里插入图片描述
在这里插入图片描述


  1. 有符号型前面一般不写signed
  2. 在定义变量时,一般会省去后面的d和u:

#define _CRT_SECURE_NO_WARNINGS
#include
#include
#include
void test()
{unsigned int a = 10u; //简写成unsigned int a=10;//注意:这里不能用huunsigned short a1 = 10u; //简写成unsigned short a1=10;unsigned long a2 = 10lu; //简写成unsigned long a2=10;unsigned long long a3 = 10llu; //简写成unsigned long long a3=10;printf("int a=%u\n", a);//这里打印short短整型要用huprintf("short a1=%hu\n", a1);printf("long a2=%lu\n", a2);printf("long long a3=%llu\n", a3);
}
int main()
{test();return 0;
}

`在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

#define _CRT_SECURE_NO_WARNINGS
#include
#include
#include
void test()
{int a = 10; //简写成int a=10;//注意:这里不能用hushort a1 = 10; //简写成 short a1=10;long a2 = 10l; //简写成 long a2=10;long long a3 = 10ll; //简写成 long long a3=10;printf("int a=%d\n", a);//这里打印short短整型要用hdprintf("short a1=%hd\n", a1);printf("long a2=%ld\n", a2);printf("long long a3=%lld\n", a3);
}
int main()
{test();return 0;
}

在这里插入图片描述


注意:sizeof()的返回值是:

在这里插入图片描述
size_t 等价于unsigned int
接收sizeof的返回值要用%u


推荐阅读
  • 下载器,就是一种网络工具,从网络中接收自己想要的数据。下载器是一个网络客户端。它的下载流程无非就是客户端连接服务器端,然后发送资源下载请求 ... [详细]
  • Matlab中利用mex编译Opencv实现画板绘图功能
    图形绘制是标记和可视化数据的重要方法.通过在Matlab中集成画板绘图功能,可为科学计算提供便利.1设置Matlab支持Opencv编译操作系统:麒麟14.04(基于Ubu ... [详细]
  • 使用临时文件tmpnam该函数的功能是产生一个唯一的文件名系统回味该文件分配一块内存来保存临时变量例如下面的代码#includeintmain(){charnam ... [详细]
  • 两种不同方式获取最大值与最小值代码1:#include<stdio.h>intmain(){floatscore[5], ... [详细]
  • 水题。。main.cppPATA1121CreatedbyPhoenixon2018224.Copyright©2018年Phoenix.Allrightsreserve ... [详细]
  • 这篇文章主要讲解了“GradeBook类怎么定义”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Grad ... [详细]
  • *Copyright(c)2016,烟台大学计算机与控制工程学院Allrightsreserved.文件名称:字符串加密.cpp作者:彭友程完成日期&# ... [详细]
  • 原题我们定义“区间的价值”为一段区间的最大值*最小值。一个区间左端点在L,右端点在R,那么该区间的长度为(R−L+1)。求长度分别为1~n的区间的最大价值。保证数据随机因为保证数据随 ... [详细]
  • 【题意】点击打开链接【分析&解题思路】除去起点(1,1)和终点(n,m)已经固定,中间能经过的是一个(n-2)*(m-2)的矩阵然后我们可以在这个矩阵里取0个(就是直接从起点跳到 ... [详细]
  • socket8 [命名管道]
    ::命名管道不但能实现同一台机器上两个进程通信,还能在网络中不同机器上的两个进程之间的通信机制。与邮槽不同,命名管道是采用基于连接并且可靠的传输方式,所以命名管道传输数据只能一对一 ... [详细]
  • P1144 最短路计数· BFS/dijkstra
    题解其实题目很简单不写了,这里总结一下从这道题目里学到的知识:当最短路的边权都是1时,dijkstraspfa就是BFS如果使用优先队列,内部结构是pair时 ... [详细]
  • 零入门kubernetes网络实战15>基于golang编程实现给ns网络命名空间添加额外的网卡
    《零入门kubernetes网络实战》视频专栏地址https:www.ixigua.com7193641905282875942本篇文章视频地址(稍后上传)本篇文章主要是想通过g ... [详细]
  • cpp命名空间
    1.namespace:c++里面的所有标识符都被定义到名为std的namespace中,命名空间就是标识符的各种可见范围,控制其作用域。2.std为c++标准命名空间,c ... [详细]
  • wyh2000andastringproblemTimeLimit:20001000MS(JavaOthers)MemoryLimit:13107265 ... [详细]
  • 文章目录验证性实验求1~n的连续整数和说明放码结果常见算法时间函数的增长趋势分析说明放码结果设计性实验求素数个数说明放码结果求连续整数阶乘的和说明放码结果验证性实验求1~n的连续 ... [详细]
author-avatar
苦--但是依然love着你
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有