C语言:字符型、整型和浮点型数据的取值范围

C语言 基础开发----目录


win64操作系统 下的各数据型的取值范围。


一、各数据类型数据----字节数

数据类型charshortintlonglong longfloatdouble
字节数1244848

计算存储空间相关介绍:C语言:关键字—sizeof(计算存储空间)

具体代码解析:

#include int main(int argc, char *argv[])
{printf("char = %d\n",sizeof(char));printf("short = %d\n",sizeof(short));printf("int = %d\n",sizeof(int));printf("long = %d\n",sizeof(long));printf("long long = %d\n",sizeof(long long));printf("float = %d\n",sizeof(float));printf("double = %d\n",sizeof(double));return 0;
}

运行结果如下:
在这里插入图片描述

二、字符型数据----取值范围

数据类型数据类型符字节数数值范围说明
字符型char1-128 ~ +127第一位是符号位:0是正数,1是负数
剩下7位是数据位:-27 ~ 27-1
无符号字符型unsigned char10~2558位数据位:0 ~ 28-1

具体代码解析:

#include int main(int argc, char *argv[])
{char cdata[7] ={-129,-128,-1,0,1,127,128} ;printf("%d,%d,%d,%d,%d,%d,%d\n",cdata[0],cdata[1],cdata[2],cdata[3],cdata[4],cdata[5],cdata[6]);unsigned char ucdata[6] ={-1,0,1,127,255,256} ;printf("%d,%d,%d,%d,%d,%d\n",ucdata[0],ucdata[1],ucdata[2],ucdata[3],ucdata[4],ucdata[5]);return 0;
}

运行结果如下:

在这里插入图片描述

字符型数据在赋值-128到127之内,数据正常。
无符号字符型数据在赋值0到255之内,数据正常。

三、整型数据----取值范围

数据类型数据类型符字节数数值范围说明
短整型short (short int)2-32768 ~ +32767第一位是符号位:0是正数,1是负数。
剩下15位是数据位:-215 ~ 215-1
无符号短整型unsigned short20 ~ 6553516位数据位:0 ~ 216-1
整型int4-2147483648~ +2147483647第一位是符号位:0是正数,1是负数。
剩下31位是数据位:-231 ~ 231-1
无符号整型unsigned int40~ 429496729532位数据位:0 ~ 232-1
长整型long (long int)4-2147483648~ +2147483647第一位是符号位:0是正数,1是负数。
剩下31位是数据位:-231 ~ 231-1
无符号长整型unsigned long40~ 429496729532位数据位:0 ~ 232-1
长长整型long long(long long int)8-9223372036854775808~ +9223372036854775808第一位是符号位:0是正数,1是负数。
剩下63位是数据位:-263 ~ 263-1
无符号长长整型unsigned long long80~ 1844674407370955161564位数据位:0 ~ 264-1

具体代码解析:

#include int main(int argc, char *argv[])
{short sdata[7] ={-32769,-32768,-1,0,1,32767,32768} ;printf("%d,%d,%d,%d,%d,%d,%d\n",sdata[0],sdata[1],sdata[2],sdata[3],sdata[4],sdata[5],sdata[6]);unsigned short usdata[6] ={-1,0,1,32768,65535,65536} ;printf("%d,%d,%d,%d,%d,%d\n",usdata[0],usdata[1],usdata[2],usdata[3],usdata[4],usdata[5]);return 0;
}

运行结果如下:

在这里插入图片描述

四、浮点型数据----取值范围

数据类型数据类型符字节数符号位指数位位数位数值范围有效数字(十进制)
浮点型float41823-2 128~ +2128
约等于-3.4x1038 ~ +3.4x1038
8位
双浮点型double811152-2 1024~ +21024
约等于-1.797x10308 ~ +1.797x10308
16位

取值范围(指数决定)

浮点型----float

float 指数位有8位,正常取值范围为0~256。
由于指数也是有正负的,所以存储数据时,是实际值加上 中间值127后存储的。
因此float 指数的取值范围是 -127 ~ 128

所以float数据的取值范围:-2 128~ +2128

双浮点型----double

double 指数位有11位,正常取值范围为0~2048。
由于指数也是有正负的,所以存储数据时,是实际值加上 中间值1023后存储的。
因此float 指数的取值范围是 -1023 ~ 1024

所以float数据的取值范围:-2 1024~ +21024

有效数字(尾数决定)

待更新。。。



本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部