结构体
1. 结构体基础
思考:
1、需要存储1字节,怎么做?定义1个char类型(1字节宽度)
2、存储4字节,怎么做?定义1个float或者int(4字节宽度)
3、需要存储100个2字节数据,怎么做?(数组)
那么,我们需要存储5个数组,这5个数据宽度都不相同,我们怎么存储?
结构体定义方法:
struct 类型名{
int a;
char b;
short c;
};
默认不占用空间,只有调用,重新去定义一个新的变量的时候,才会占用。
如图,不占用空间。
再如上图,我们调用定义新变量了, 就开始占用空间了。
和我们平时定义变量一样,在函数内就是局部变量,在函数外就是全局变量。
其实也不用疑惑,结构体就是相当于帮助我们重新定义了一个新的数据类型。
成员可以是除了自身的任何数据类型。
我们定义的同时也可以直接赋值
2. 结构体变量类型的读写
如图所示,定义相应类型的变量,去接受数据。
那么如果我们要进行写,怎么操作?
如图所示,就完成了写的操作。
再运行,数值已经写入完毕。
定义结构体时,同时定义变量
如图所示,定义结构体后,还定义了两个新的变量,一个是dingyi,一个是dingyi2,他们两个都是MyStruct,我们定义的类型。