//利用结构体表示:年月日
#include<stdio.h>
int main()
{
//1. 定义结构体变量。不会分配存储空间
struct Date
{
//按顺序分配
int year;
int month;
int day;
} ;
//2. 定义结构体变量。(这个时候才会分配存储空间)
struct Date d1 = {2011,4,10};//月份不可以写成09,07等,0开头是八进制。
int s = sizeof(d1);
printf("%d\n",s); //看结构体变量d2占用了多少个存储空间
//输出d1中各个元素的地址
printf("%p - %p - %p\n", &d1.year, &d1.month, &d1.day);
struct Date d2 = {2022, 6, 7 };
//结构体所占用的空间必须是最大成员 字节的倍数。这叫补齐算法 or对齐算法
d2 = d1;// 把d1的值复制给d2
d2.year = 22222;//这个时候下面打印的还是2222,d2的值已经改变了
printf("d2.year = %d\n",d2.year);
return 0;
}