在我们写c语言的程序中,总是能看见unsigned的关键字,unsigned的作用是声明无符号的整形类型,与signed对应。这个关键字是挺常见的。

unsigned:用来声明无符号的整形变量

signed:用来声明有符号的整形变量

我们以(signed int a)与(unsigned int a)进行举例,再谈其区别的时,我们先来说说整形数据的存储,计算机存储数据都是以二进制数据进行存储的,其中负数的存储方式为补码进行存储的,而正数的补码与原码是相同的。

对于有符号的整形变量来说(signed)最高位0和1表示这个数值的符号,0代表正数,1代表负数,其余位表示数据。

对于无符号的整形变量来说(unsigned)所有位都表示数据,我们可以很直观的看到两者表示数的范围是不同的,如果系统中的a是32位的int,那么signed int 表示的范围为-2^31~2^31-1(最高位表示符号,不表示数据),而unsigned表示的范围为0~2^31。

所以在我们定义一个整形数据发现数据超过了2的15次方时,我们可以用unsigned的关键字来定义这个数,这样数据的范围扩大一倍,如果想打印出这个数据,我们一般用%u进行打印而不用%d,这里的%u是无符号的10进制正数,%d是有符号的10进制整数,使用%d时会把无符号的数据自动转换为有符号的数据,那么得到的数跟没有定义unsigned的数区别就不大了。

浅谈unsigned与signed的区别相关推荐

  1. c语言宽字符与wchar,浅谈c++ 字符类型总结区别wchar_t,char,WCHAR

    1.区别wchar_t,char,WCHAR ANSI:即 char,可用字符串处理函数:strcat( ),strcpy( ), strlen( )等以str打头的函数. UNICODE:wchar ...

  2. 浅谈 unix, linux, ios, android 区别和联系

    浅谈 unix, linux, ios, android 区别和联系 网上的答案并不是很好,便从网上整理的相对专业的问答. 1.UNIX 和 Linux UNIX 操作系统(尤尼斯), 是一个强大的多 ...

  3. 建造者模式浅谈 与工厂模式的区别

    感谢您的阅读.如果感觉文章对您有用,麻烦您动动手指点个赞,以资鼓励.谢谢! 转载请注明出处哈 建造者模式浅谈 与工厂模式的区别_茄子_土豆的博客-CSDN博客_建造者模式和工厂模式的区别 创建对象时构 ...

  4. int signed in mysql_【转】mysql 中int类型字段unsigned和signed的区别

    转自https://www.cnblogs.com/wangzhongqiu/p/6424827.html 用法: mysql> CREATE TABLE t ( a INT UNSIGNED, ...

  5. 浅谈JDBC与ODBC的区别与应用

    谈到JDBC与ODBC的区别,JDBC和ODBC其实都是用来连接数据库的启动程序.ODBC中文名字叫做开放数据库互联,是微软技术人员开发的开放服务结构中有关数据库的一个组成部分,它建立一组相关的规范, ...

  6. 浅谈Android各版本sdk区别

    转载地址:http://blog.csdn.net/itluochen/article/details/52688935 目录(?)[-] SDK目录 add-ons docs extras plat ...

  7. 浅谈Vue与React的区别

    经过你自己的学习,相信你们你对vue与react已经有了一些了解,也觉得这两大框架有一些相同之处.那咱们就来谈一下你觉得这两大框架有什么地方是不太一样的? 我觉得最大的相同点就是虚拟DOM节点,rea ...

  8. 浅谈 -- ♡ ‧₊˚ JS 与JQ的区别 ‧₊˚ ♡

    jQuery是一个Javascript库,是对于ECMAScript.dom.bom的一个浅封装,让用户更方便操作. 让我们简单谈谈JS与JQ的区别吧! ♡ ‧₊˚  定义  ‧₊˚ ♡ js是网页的 ...

  9. 浅谈框架与架构的区别

    背景 设计模式的学习贯彻我们整个学习过程中,当然一遍是不可能完全深入理解的,需要我们通过不断的接触才会对设计模式有更深层次的理解.设计模式就是告诉我们针对特定问题如何组织类,对象和接口之间的关系,是前 ...

最新文章

  1. proxmox 宕机转义_Proxmox+Ceph的HCI环境搭建
  2. 请使用frameset/frameset完成以下功能
  3. leecode第一百四十八题(排序链表)
  4. 广东工业大学计算机学院研究生招生,蔡瑞初-广东工业大学研究生招生信息网...
  5. c++ primer 第14章 习题解答
  6. Java Web 九大内置对象(一)
  7. SitePoint播客#115:直播在WordCamp Raleigh第2部分
  8. DPDK示例l3fwd性能测试
  9. 银行系统数据流图-盒图-软件结构图对应一例
  10. linux主机名hostname老是被更改为broad原理分析和恢复
  11. SpringCloud Day05---服务网关(Gateway)
  12. 手游LTV(生命周期价值)计算公式
  13. 项目管理有妙招,看懂你的项目健康状态和完整度
  14. 都2021年了不会还有人用门禁卡吧!(手把手教你用手机代替门禁卡)
  15. 华为手机怎么关闭下拉智慧搜索
  16. C++ primer读书记录包括第一部分和第二部分 第二十二次更新2021.9.10
  17. 通过ZPL指令调用zebra打印机打印面单(java版)
  18. SumGNN部署实验lmdb.ReadonlyError: mdb_dbi_open: Permission denied
  19. vue启动时报错——did you register the component correctly? For recursive components
  20. 华中师范大学计算机学院校友,院部动态丨计算机学院:酸甜苦辣咸——你最pick谁...

热门文章

  1. 单链表实现简单选择排序
  2. 汇编01-MASM 查看列表文件
  3. js 二叉树图形_JS实现二叉树 - 山海散客 - OSCHINA - 中文开源技术交流社区
  4. Windows共享文件夹,设置无密码访问
  5. vscode 配置vetur的分号、引号、尾随逗号
  6. python平稳性检验_时间序列中单位根平稳性检验adfuller详解 (ADF Test in Python)
  7. Tracking Learning Detection (TLD)目标跟踪算法原理详解~PPT版
  8. VS2019打包C#桌面程序
  9. http协议中的vary域
  10. python天天向上每十天休息一天_统计师的Python日记【第十天:数据聚合】