美文网首页
C语言学习 - 整型数据类型

C语言学习 - 整型数据类型

作者: Hyso | 来源:发表于2019-02-20 11:49 被阅读0次

    在C语言中,整型数据类型可分为:char、short(short int)、int、long(long int)、long long(long long int)。每一种整型数据类型可分为两种形式:无符号(unsigned)和有符号(signed)。

    • char
      传送门:C语言学习 - 字符型数据类型
    • short
      类型说明符:[signed] short,表示的数值范围:-32768 ~ 32768,存储大小:2字节
      类型说明符:unsigned short,表示的数值范围:0 ~ 65535,存储大小:2字节
    • long
      在32位操作系统中:
      类型说明符:[signed] long,表示的数值范围:-2,147,483,648 ~ 2,147,483,647,存储大小:4字节
      类型说明符:unsigned long,表示的数值范围:0 ~ 4,294,967,295,存储大小:4字节
      在64位操作系统中:
      类型说明符:[signed] long,表示的数值范围:-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807,存储大小:8字节
      类型说明符:unsigned long,表示的数值范围:0 ~ 18,446,744,073,709,551,615,存储大小:8字节
    • int
      在16位操作系统中:
      类型说明符:[signed] int,表示的数值范围:-32768 ~ 32768,存储大小:2字节
      类型说明符:unsigned int,表示的数值范围:0 ~ 65535,存储大小:2字节
      在32位或64位操作系统中:
      类型说明符:[signed] int,表示的数值范围:-2,147,483,648 ~ 2,147,483,647,存储大小:4字节
      类型说明符:unsigned int,表示的数值范围:0 ~ 4,294,967,295,存储大小:4字节
    • long long
      类型说明符:[signed] long long,表示的数值范围:-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807,存储大小:8字节
      类型说明符:unsigned long long,表示的数值范围:0 ~ 18,446,744,073,709,551,615,存储大小:8字节
    通过 sizeof 函数查看整形数据类型的存储大小(64位操作系统)
    #include <stdio.h>
    
    int main(void)
    {
        short a = 300;
        int b = 6600;
        long c = 7777777;
        long long d = 999999999;
    
        printf("short a的值:%d\n", a);
        printf("int b的值:%d\n", b);
        printf("long c的值:%ld\n", c);
        printf("long long d的值:%lld\n", d);
    
        printf("short int 存储大小:%ld byte\n", sizeof(short int));
        printf("int 存储大小:%ld byte\n", sizeof(int));
        printf("long int 存储大小:%ld byte\n", sizeof(long int));
        printf("long long int 存储大小:%ld byte\n", sizeof(long long int));
    
        return 0;
    }
    

    程序输出内容:

    short a的值:300
    int b的值:6600
    long c的值:7777777
    long long d的值:999999999
    short int 存储大小:2 byte
    int 存储大小:4 byte
    long int 存储大小:8 byte
    long long int 存储大小:8 byte
    
    整型数据在内存中的存放形式

    整型数据在内存中的存放形式是以补码表示的

    • 正数的补码和原码相同。
      定义一个整型变量:int i = 10;
      内存中的存放形式(32位):00000000000000000000000000001010
    • 负数的补码:第一位是符号位,除符号位外每一位求反后加1。
      定义一个整型变量:int i = -10;
      内存中的存放形式(32位):11111111111111111111111111110110

    相关文章

      网友评论

          本文标题:C语言学习 - 整型数据类型

          本文链接:https://www.haomeiwen.com/subject/mqicyqtx.html