码迷,mamicode.com
首页 > 编程语言 > 详细

C语言 数据类型

时间:2018-08-03 20:49:33      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:长度   开头   short   含义   long   机器   单元格   strong   二进制   

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

数据类型决定长度:我们一个内存地址(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;

C语言 数据类型

标签:长度   开头   short   含义   long   机器   单元格   strong   二进制   

原文地址:https://www.cnblogs.com/uestcman/p/9416110.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!