C语言中怎么判定结构体数组中的某项元素为空

给了结构数组5的长度,但只存了3条信息.struct book //图书信息
{
char id[10];
char name[20];
char author[20];
float price;
}BOOK[5]={{"NO1","诛仙","萧鼎",98.8f},
{"NO2","佣兵天下","说不得大师",88.8f},
{"NO3","猛龙过江","骷髅精灵",78.8f}};
在后面有用BOOK[i]=BOOK[i+1]的方式删除了一条信息. 现在的数组中下标为 2,3,4的元素都没有信息. 该怎么用if判断下标为2,3,4的元素中有没有信息呢.... 本人刚学C几天..也是学的第一门编程语言...发现实在伤脑袋呀..

如果删除某条信息,这条信息后面的信息都往前整不留空隙,那用个变量保存数组现存几条信息即可,在添加删除时维护此变量。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-01
指定长度5,初始化3个,后面的都是用0来初始化的
第2个回答  2013-04-01
删除时,做标记, 如, book[i].id[0] = NULL