为什么到第二遍循环就报错了,这报错是什么意思,求解。

inta
SD*de[6]=f(SD*)malloc(6*sizeof(SD))
if(de==NULL)
printf("申请失败");
printf("请选择要添加的人数.n");
Scanf("%d",&a);
for(inti=0;i<a;i++)
printf("第%d个学生:n",i);
printf("姓名:");
scanf("%s",de[i]->name);
printf("n")
printf("学号:")
Scanf("%s",de[i]->sn)
printf("n")
printf("电话:");
Scanf("%s",de[i]->ip);
printf("n")
printf("年龄:");
Scanf("%d",&de[i]->age)
H
free(de);
