关于#c语言#的问题:void ClearList(SqList &L)是清空线性表L


typedef struct
{
    char *elem;
    int length;
}SqList;

void ClearList(SqList &L)
{
    L.length = 0;
}

根据书上描述,void ClearList(SqList &L)是清空线性表L。
为什么把length赋值为0就是清空啊?不应该操作elem吗?

length赋值为0是记录线性表的长度为0,实际上存储在线性表中的数据是存在滴。要彻底清空线性表,要释放存储在线性表中的数据所占用的内存空间,或者对elem重新分配内存空间。