1.数据类型
数据类型可以理解为固定内存大小的别名,是创建变量的模子;
数据类型的本质:
2.变量
变量是实际连续存储空间的别名,程序中通过变量来申请命名内存空间,通过变量的名字可以使用内存空间;
#include <stdio.h>
//数据类型和变量,实际都是内存的别名
int main()
{
char c = 0;
short s = 0;
int i = 0;
printf("%d, %d\n", sizeof(char), sizeof(c));//char是模子,char和c实际都是1个字节内存的别名
printf("%d, %d\n", sizeof(short), sizeof(s));//short是模子,short和c实际都是2个字节内存的别名
printf("%d, %d\n", sizeof(int), sizeof(i));//int是模子,int和c实际都是4个字节内存的别名
return 0;
}
3.数据类型和变量的关系
可以使用自定义类型并且创建变量和通过printf语句来探索数据类型和变量的实质,即为内存空间的别名;
#include<stdio.h>
typedef int INT_32;//typedef声明后需加分号
typedef unsigned char BYTE;
typedef struct demo
{
INT_32 a;
BYTE b;
BYTE c;
short d;
}DEMO;
int main()
{
INT_32 a;
BYTE b,c;
DEMO d;
printf("%d %d\n",sizeof(INT_32),sizeof(a));
printf("%d %d\n",sizeof(BYTE),sizeof(b));
printf("%d %d\n",sizeof(BYTE),sizeof(c));
printf("%d %d\n",sizeof(DEMO),sizeof(d));
return 0;
}
输出结果为:
注意观察输出结果即可得出结论!!!