基本数据类型分析

编程时需要使用字节,为了方便引入了数据类型。

1.什么是数据类型?

数据类型可以理解为固定内存大小的别名,也是创建变量的模子。

使用内存是需要借,为了方便引入变量。

什么是变量呢?

一段连续实际存储空间的别名。

程序中通过变量来申请并命名存储空间。

通过变量的名字可以使用存储空间。

实例:

#include <stdio.h>


int main()
{
    char c = 0;
    short s = 0;
    int i = 0;
    
    printf("%d, %d\n", sizeof(char), sizeof(c));
    printf("%d, %d\n", sizeof(short), sizeof(s));
    printf("%d, %d\n", sizeof(int), sizeof(i));
    
    return 0;
}

运行结果:

1,1
2,2
4,4

解释:

char 是一个字节的别名,所以字节数为1。变量c是char定义的,即它的模子是char,所以变量c的字节也是1。

short 是两个字节的别名,所以字节数为2。变量s是short定义的,即它的模子是short,所以变量s的字节也是2。

int 是四个字节的别名,所以字节数为4。变量i是int定义的,即它的模子是int,所以变量i的字节也是4。

实例:#include<stdio.h>
typedef int INT32;
typedef unsigned char BYTE;
typedef struct demo
{
short s;
BYTE b1;
BYTE b2;
INT32 i;
}DEMO;
int main()
{
INT32 i32;
BYTE byte;
DEMO d;
printf("%d,%d\n",sizeof(INT32),sizeof(i32));
printf("%d,%d\n",sizeof(BYTE),sizeof(byte));
printf("%d,%d\n",sizeof(DEMO),sizeof(d));
return 0;

}

运行结果:

4,4
1,1
8,8

解释:

INT32是自定义的int的别名,所以INT32占4个字节,i32是INT32定义的,即它的模子是INT32,所以i32也占4个字节。

BYTE是自定义的unsigned char的别名,所以BYTE占1个字节,byte是BYTE定义的,即它的模子是BYTE,所以byte也占1个字节。

DEMO是自定义的struct结构体,struct的字节数是1个short的字节数加上2个BYTE的字节数加上1个INT32的字节数,即为8个字节,而d是DEMO定义的,即它是由DEMO产生的,所以d也占8个字节。

扩展:strcut定义的4个域可以分开使用。










  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值