C语言 基础开发----目录
在win64操作系统下的各数据型的取值范围。
一、各数据类型数据----字节数
计算存储空间相关介绍: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;}
运行结果如下:
二、字符型数据----取值范围
具体代码解析:
#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之内,数据正常。
三、整型数据----取值范围
具体代码解析:
#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;}
运行结果如下:
四、浮点型数据----取值范围
取值范围(指数决定)
浮点型----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
有效数字(尾数决定)
待更新。。。