c 语言的数据类型

52 阅读1分钟

整型数据类型

    printf("Hello, World!\n");
    printf("%lu\n", sizeof(short));
    printf("%lu\n", sizeof(int));
    // 跟两个因素有关 1/系统 2/ 编译器  32位是4 个字节, 64位是8个字节
    printf("%lu\n", sizeof(long)); 
    printf("%lu\n", sizeof(long long));

字节和 比特

    bit位 即0 或者 1
    byte字节, 8个位作为一个字节, 字节是处理数据的基本单位
    1byte = 8bits
    1kB = 1024 byte
    1MB = 1024KB
    1GB = 1024MB
    大B 和 小b  运营商的宽带 100Mb 宽带 (大B 小b的区别)
    数据总线 32位系统有32根数据总线和32根地址总线 , 
64位系统有64根地址总线和64根数据总线,根数越多 数的表示范围越大

char

字符型 char 占用一个字节(内存中是存储的ASCII码值) 其实就是一个整数

char a = 'a'; // 相当于 a = 97
printf("%c\n", a);

tip: A 和 a 相差36

转译字符

\n 换行,将当前位置移到下一行开头 \r 回车,将当前位置移到本行开头 \t 水平制表符,跳到下一个TAB的位置 \ 代表一个反斜线字符 ' 代表一个单引号字符 " 代表一个双引号字符 \0 数字0 字符串结束标记

浮点 float double

  1. 单精度浮点型:float,精确到小数点后6位
  2. 双精度浮点型:double,精确到小数点12位
  3. 不以f结尾的常量默认是double类型,以f结尾的是float 类型
    float aa = 23.14f;
    double bb = 23.14;

    printf("a = %f\n", aa);
    printf("b = %f\n", bb);

    double c = 23.1415926;
    printf("c = %f\n", c);
    // 整个数据占用8个位置,小数点后3位
    printf("c = %8.3f\n", c);