简明数据类型指南

常用的数据类型char:字符在计算机的存储器中以字符编码的形式保存,字符编码是一个数字,因此在计算机看来,A与数字65完全一样(65是A的ASCII码)。int:如果要保存一个整数,通常可以使用int。不同计算机中的int的大小不同,但至少应该有16位。一般而言,int可以保存几万以内的数字。short:它通常只有int的一半大小,所以如果只想保存一个几百、几千的数字,可以使用这个数据类型。long:一般大小是int的两倍,至少应该有32位,所以可以保存几十亿以内的数字;但大部分计算机的long和int一样大,因为在这些计算机中int本身就很大。float:它是保存浮点数的基本数据类型。double:如果想让计算结果精确到小数点以后很多位,可以使用double。double比float多占一倍的空间,可以保存更大,更精确的数字。

程序验证

下面我们用程序来验证一下:

#include<stdio.h>#include<limits.h>  //还有表示整型大小的值 #include<float.h>  //含有表示float和double类型大小的值int main(){    printf("The value of INT_MAX is %i\n",INT_MAX);  //int 型最大值     printf("The value of INT_MIN is %i\n",INT_MIN);  //int 型最小值    printf("An int takes %i bytes\n",sizeof(int));  //int所占字节         printf("The value of FLT_MAX is %f\n",FLT_MAX); //float    printf("The value of FLT_MIN is %f\n",FLT_MIN);    printf("An float takes %i bytes\n",sizeof(float));        printf("The value of CHAR_MAX is %i\n",CHAR_MAX); //char    printf("The value of CHAR_MIN is %i\n",CHAR_MIN);    printf("An char takes %i bytes\n",sizeof(char));        printf("The value of DBL_MAX is %lf\n",DBL_MAX); //double    printf("The value of DBL_MIN is %lf\n",DBL_MIN);    printf("An double takes %i bytes\n",sizeof(double));        printf("The value of SHRT_MAX is %i\n",SHRT_MAX); //short    printf("The value of SHRT_MIN is %i\n",SHRT_MIN);    printf("An short takes %i bytes\n",sizeof(short));        return 0;} 

结果如下:

思考

问题1:8位、64位到底是什么意思?

答:从技术上讲,计算机的位数有多种含义,它既可以代表CPU指令的长度,也可以代表CPU一次从存储器读取数据的大小。实际上,位数是计算机能够处理的数值长度。

问题2:那这和int、double的大小有什么关系?

答:如果一台计算机能处理32位的数值,就会把基本数据类型(例如int)的大小设为32位。

要温暖还是怕麻烦。

简明数据类型指南

相关文章:

你感兴趣的文章:

标签云: