C语言中无符号字符型,这个无符号(unsigned)到底什么意思啊

不是说无符号整形,是无符号字符型

C语言中无符号字符型其实就是是长度为1个字节的整数,从本质上说也是整数类型,通常用来存放ASCII码。

整型分为无符号(unsigned)和有符号(signed)两种类型,默认整型变量是有符号的类型,char有点特别。需声明无符号类型就要在类型前加上unsigned。

无符号整型和有符号整型的区别在于无符号类型可以存放的正数范围比有符号整型中的范围大一倍,因为有符号类型将最高位储存符号,而无符号类型全都储存数字。

在16位系统中一个int能存储数据的范围是-32768~32767,unsigned能存储的数据范围是0~65535。

扩展资料

整型分类:

基本型

类型说明符为int,在内存中占4个字节(不同系统可能有差异,此处原为2,经查证windows系统下为4,VAX系统也如此) ,其取值为基本整常数。

短整型

类型说明符为short int或short'C110F1。所占字节和取值范围会因不同的编译系统而有差异。对于16字机,short int 占2个字节,在大多数的32位机中,short int 占4个字节。但总的来说,short int 至少16位,也就是2个字节。

长整型

类型说明符为long int或long ,在内存中占4个字节,其取值为长整常数。在任何的编译系统中,长整型都是占4个字节。在一般情况下,其所占的字节数和取值范围与基本型相同。

无符号型

类型说明符为unsigned。在编译系统中,系统会区分有符号数和无符号数,区分的根据是如何解释字节中的最高位,如果最高位被解释为数据位,则整型数据则表示为无符号数。

参考资料来源:《C++语言程序设计 (第4版)》 郑莉  董渊 何江舟 编著 清华大学出版社

第2章 C++简单程序设计  2.2 基本数据型和表达式

参考资料来源:百度百科--无符号整型

参考资料来源:百度百科--整型变量

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-07-05

无符号整数,计算机里的数是用二进制表示的,最左边的这一位用来表示这个数是正数还是负数,这样的话这个数就是有符号整数。

如果最左边这一位不用来表示正负,而是和后面的连在一起表示整数,那么就不能区分这个数是正还是负,就只能是正数,这就是无符号整数。

扩展资料

有符号和无符号的差别

int是有符号的,unsigned是无符号的。

它们所占的字节数其实是一样的,但是有符号的需要安排一个位置来表达我这个数值的符号,因此说它能表示的绝对值就要比无符号的少一半。

举个例子:有一个1个1字节的整数,那么无符号的就是:“00000000~11111111 ”这个就是无符号的范围。

一个字节是8位, 有符号的数,因为第一个位要用来表示符号,那么就只剩下7个位置可以用来表示数了0000000~1111111。

因为有符号,所以还可以表示范围:-1111 111~+1111 111。

参考资料来源:百度百科-unsigned



本回答被网友采纳
第2个回答  推荐于2017-10-03
C语言中 一个存储单元 按二进制数位 可以分 符号位 和 数据位,数据位 也许分 指数位,尾数位,到底一个存储单元,有多少位,有哪些位,取决于 变量类型声明。
unsigned char 类型声明 说,长度 是 1个字节,(也就是 8 位 二进制数位),无符号位,8 位都是数值位。
所以 unsigned char 数值范围 是 0000 0000 到 1111 1111, 写成 10 进制 是 0 到 255。

无符号字符型 实际上 是 1个字节 无符号整型。可以用来描述 ASCII 字符 编码 0 到 255。本回答被提问者和网友采纳
第3个回答  2012-09-17
字符型是8位整数,若是无符号字符型,就只能表示0~255之间的正整数。
有符号的字符型,能表示-128~127之间的正整数和负整数。
所谓字符型简单点说就是8位整数
以前用字符型来表示ASCII字符
无符号的则扩展到了255,可以用来表示扩展ASCII
第4个回答  2012-09-17
就是没有符号呗,也就是说没正负之分。。。。。
例如:int 类型 可以取正负值
但如果你定义了 unsigned int 则只能取正值 不能取负值
否则编译时就会报错!

C语言中无符号字符型,这个无符号(unsigned)到底什么意思啊
C语言中无符号字符型其实就是是长度为1个字节的整数,从本质上说也是整数类型,通常用来存放ASCII码。整型分为无符号(unsigned)和有符号(signed)两种类型,默认整型变量是有符号的类型,char有点特别。需声明无符号类型就要在类型前加上unsigned。无符号整型和有符号整型的区别在于无符号类型可以存放的正...

C语言中无符号字符型,这个无符号(unsigned)到底什么意思啊
无符号整数,计算机里的数是用二进制表示的,最左边的这一位用来表示这个数是正数还是负数,这样的话这个数就是有符号整数。如果最左边这一位不用来表示正负,而是和后面的连在一起表示整数,那么就不能区分这个数是正还是负,就只能是正数,这就是无符号整数。

C语言中无符号整型,无符号字符型,这个无符号(unsigned)到底什么意...
顾名思义 就是无符号的意思!即是说 在取值时 取正值!例如:int 类型 可以去正负值 但如果你定义了 unsigned int 则只能取正值 不能取负值 否则编译时就会报错!

C语言中,unsigned u表示无符号整形变量?这个无符号是什么意思?
无符号的意思是全部二进制位都用于表示数据,没有符号位。若用32位二进制表示数据,表示范围为0至2^32-1。

unsigned在c语言中是什么意思?
无符号数的意思。整型的每一种都有无符号(unsigned)和有符号(signed)两种类型(float和double总是带符号的)在默认情况下声明的整型变量都是有符号的类型(char有点特别),如果需声明无符号类型的话就需要在类型前加上unsigned。无符号版本和有符号版本的区别就是无符号类型能保存2倍于有符号类型的...

unsigned在c语言中是什么意思
在c语言中,unsigned主要表示无符号整型数据类型的修饰符,它可以增加变量所能表示的正整数范围。它用于表示非负整数,即大于或等于零的整数值。与有符号整数类型(如int)不同,unsigned int没有保存数字的正负号位,因此可以表示更大的正整数范围。一般情况下,unsigned int在内存中使用与int相同的字节...

c语言中什么是基本无符号整型(unsigned int)?特别是这个无符号,它代表...
整型在C语言中有无符号(unsigned)和有符号(signed)两种类型,其中默认情况下声明的整型变量都是有符号的,若需声明无符号类型则在类型前加unsigned。无符号版本相较于有符号版本能保存2倍的数据,如在16位系统中,int的范围是-32768~32767,而unsigned的范围为0~65535。在计算机中,整数以补码形式存放...

c语言unsigned是什么意思
unsigned是C语言中的一个关键字,表示无符号数。在C语言中,一个整数可以用有符号或无符号的方式存储,对于有符号整数,最高位用于表示符号,因此能够表示的最大正整数值比无符号整数少一半。而无符号整数不需要用一个位来表示符号,因此其能够表示的最大值是有符号整数的两倍。使用unsigned修饰变量时,...

在C语言中,unsigned char是什么类型
无符号字符型,可以看成用来表示0~255的整数的类型

关于C语无符号型unsigned的区别
C语言中的unsigned类型与signed类型在数值范围、类型特性和存储表现上存在显著区别。下面是详细的解释:首先,关于数值范围,unsigned整数(如unsigned int)是无符号的,所有位都用于表示数值大小,没有正负之分,其范围是0到2^16-1,即0到65535。相比之下,signed整数(如signed int)的第一个位用来表示...

相似回答