目录
一、自定义数据类型——typedef
功能:声明一个已有的数据类型的新名字。
例如:typedef int Length;
这样Length就成为int的别名,即后续程序可以用Length来表示一个变量的类型是int(即代替int来声明一个变量)
例如:
(1)typedef int Length;
Length a,b; //这样子,a,b是int类型的变量
Length sum[10]; //sum[]是int类型的数组,每个单元存放的是int类型的值
(2)typedef struct ADate{
int month;
int day;
int year;
}date;
date d={1,2,3}; //date表示的是struct到date前面那个大括号的所有内容,而d是结构变量
(3)typedef *char[10] Strings; //Strings是十个字符指针类型数组的别名,该数组元素中保存的是字符的地址或字符串的首地址
二、联合
注意:union与struct的区别在于,struct里面的各个内容所占的空间是独立的,而union所占的空间是一起的,都只占据一个空间。
sizeof(union...)=取sizeof(每个内容)的最大值
计算机将1234转换成16进制(00 00 04 D2)放入那个空间,证明了i的值与数组ch的值相等。
但由于小端计算机存储数据时,会把低位放在前面。所以最终的结果为:
三、union的用处
常用于得到一个整数,浮点数等的字节。因为他会将其转化成对应的进制表达。