1 #include<stdio.h>
2 #include<stdlib.h>
3
4 typedef unsigned short int uint16;
5 typedef struct date{
6 uint16 year;
7 uint16 month;
8 uint16 day;
9 }date;
10 void print(date const *p)
11 {
12 printf("%d年,%d月,%d日, ",p->year,(*p).month,(*p).day);//(*p). = p->
13 }
14 int main()
15 {
16 date b[3] = {{2010,8,13},{2012,12,31},{2011,4,12}};
17 int i;
18 for(i = 0;i<3;i++)
19 print(&b[i]);
20 printf("\n");
21
22 double* p = (double*)malloc(sizeof(double));
23 int *a = calloc(5,sizeof(int));
24 printf("p = %p,a = %p,\n",p,a);25
26 *p = 123.45;
27
28 for(i = 0;i<5;i++)
29 a[i] = i+10;
30 printf("%g\n",p);
31 for(i = 0;i<5;i++)
32 printf("%d ",a[i]);
33 printf("\n");
34 free(p);
35 a = realloc(a,sizeof(int)*10);
36 if(a == NULL)
37 {
38 printf("空间申请失败\n");
39 return 1;
40 }
41 for(i = 0;i<10;i++)
42 printf("%d ",a[i]);
43 printf("\n");
44 a = realloc(a,0);
45 return 0;
46 }
47 //在C语言中传递结构变量时总是传递地址