C语言 数据类型总结

来源:互联网 发布:java语言是一个系列吗 编辑:程序博客网 时间:2024/05/18 02:29

1、  整型

           Long long    long     int       short             整数范围(十进制)

  16位机     64            32      16        16                  -32768~32767

  32位机     64            32      32        16           -2147483648~2147483646

  64位机     64            32      32        16             -9223372036854775808~..

  其他:unsigned long long    unsigned long   unsigned    unsigned short

 

2、  输出

  (1) 整型

  %d :int型    

  %u :无符号int  

  %ld :long型 

  %lu :无符号long  

  %hd:short型

  %lld :long long型(某些编译器不支持)

  (2)数制输出    例:36

  10进制:  %d  : 36                   %d   :36

    8进制:  %o  : 44                   %#o  :044

  16进制:  %x  : 24                   %#x  :0x24

  (3) 整型数制

    %o   %lo   %hx

    如何输出有符号8进制数?   无法

3、  字节与字

  1)  字节:绝大部分字节是8位,也有些机器不是,因为char类型通常用8位表示,有些机器不是,所以后来标准定义为char的位数即改机器的字节位数。

  2)  字:字是机器的自然位数,8位机一个字8位,16位机16位,32位机32位等等

4、  字符型:

  1)char型:

    单引号内的单个字母,或数字(65也是一个数字),或转义字符;

    如果不用单引号,也可以,但必须是整型,且只识别最后8位,并且识别为该整型的ASCII字符,例如:

            char abc=’a’;     跟   char abc=97;  结果是一样的

    输出值由%d或%c决定

  2)转义序列:

       \a        \b           \f        \n           \r               \t               \v  

     警报     退格      走纸    换行      回车       水平制表      垂直制表

    \\         \’        \”       \?          \0oo               \xhh

    \         ‘         “          ?       八进制值    十六进制值(\x49..)

  注:数值与字符不要搞混,如‘4’不等于4,‘4’等于52(4的ASCII值)

 

5、  布尔型

  C99新类型,标识符:_Bool   ,定义的变量只有0和1两种值,赋值是只要不是0,那么不管赋什么(但

  必须是整型或字符型)都输出为1;

 

6、  可移植型(前期不需要重点掌握):

  使用前需要   #include<inttypes.h>

  然后可使用诸如int16_t 、int32_t、uint32_t、uint8_t等等的数据类型定义符

  注:只有在程序可能需要移植到别的类型的机器上时,才需要这些

 

7、  浮点类型

  1)指数记数法      

    3.123e27   (大小写都可以)   .2213e-35             34e12

    float        6位有效数字                                  32位长              -37~38位指数   

    double   15位有效数字(C语言规定至少为10)   64位长            -307~308

    long double  >=double

    %f  十进制记数法输出     %e   指数记数法输出

原创粉丝点击