其是数组没有为空的,只要你申请了空间(数组一定以就在栈上有自己的空间),空间里就有数据,可以输出.然而: 你用memset把数组空间全部赋值为0了,是可以判断的.但是需要判断空间的内容,即:a[i].word[0] a[i].word是数组word[20]的首地址,当然不会为0,或者‘\0’,换成如下就是零了:也可以是\0或者NULL for (int i=0; i