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

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


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


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

数据类型charshortintlonglong longfloatdouble
字节数1244848

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

具体代码解析:

#include <stdio.h>

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 <stdio.h>

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 <stdio.h>

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

有效数字(尾数决定)

待更新。。。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

根号五

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值