这个我去查了一下,算是搞明白了,回车是因为getline 的特性,对于一般cin,cpp会选择对应的内容进行提取,剩下的残片会留在缓冲中,就以本题为例,我们把n读了,假如后面正常的把全部项目散开取走,仍然是没问题的,但是如果我们用getline,就会从头搜整个缓冲区,找到每个\n为止,作为一行,这时候,就会出现第一个空行,所以这里要getchar清一下\n,对于其他类似的也一样的处理