```c
void clear_stack(pstack s)
{
pnode p = s->top;
pnode q = NULL;
while (p != s->bottom)
{
q = p->pnext; //在这里
free(p);
p = q;
}
s->top = s->bottom;
printf("清空完成!");
}
```
free(p);放最后面吧