zoukankan      html  css  js  c++  java
  • C语言 数据类型

    数据类型表示一个内存块的长度和解释方式

    数据类型决定长度:我们一个内存地址(0x30000000),本来这个地址只代表1个字节的长度,但是实际上我们可以通过给他一个类型(int),让他有了长度(4),这样这个代表内存地址的数字(0x30000000)就能表示从这个数字(0x30000000)开头的连续的n(4)个字节的内存格子了(0x30000000 + 0x30000001 + 0x30000002 + 0x30000003)。
    数据类型决定解析方法:譬如我有一个内存地址(0x30000000),我们可以通过给这个内存地址不同的类型来指定这个内存单元格子中二进制数的解析方法。譬如我 (int)0x30000000,含义就是(0x30000000 + 0x30000001 + 0x30000002 + 0x30000003)这4个字节连起来共同存储的是一个int型数据;那么我(float)0x30000000,含义就是(0x30000000 + 0x30000001 + 0x30000002 + 0x30000003)这4个字节连起来共同存储的是一个float型数据;

    (32位机器)C语言各种数据类型所占内存大小(字节数,一个字节8位)

    1: char a: sizeof(a) = 1;

    2: int a : sizeof(a) = 4;

    3: short a: sizeof(a) = 2;

    4: long a: sizeof(a) = 4;

    5: double long a: sizeof(a) = 8;

    6: float a: sizeof(a) = 8;

    7: struct a{
    char b;
    int c;
    short d;
    };
    struct a a1;
    sizeof(a1) = 1+4+2 =7;

    8: union a{
    char b;
    int c[10];
    short d;
    };
    union a a1:
    sizeof(a1) = sizeof(c) = 4*10 = 40;

    9:char* a; sizeof(a) = 4;

  • 相关阅读:
    JAVA 读取excel文件成List<Entity>
    JAVA 下载单个文件
    js替换指定位置字符串
    Java学习——继承
    Java——单例设计模式
    Java学习——static关键字
    个人成长阶段
    Android_xml背景色的值
    Android开发_关于点击事件
    Android开发_关于中英文切换
  • 原文地址:https://www.cnblogs.com/uestcman/p/9416110.html
Copyright © 2011-2022 走看看