在要求用户提供新字符之前,是否可以从先前的读取中“删除”保留在缓冲区中的所有换行字符?现在我正在这样做
scanf("%c ", &trash);
scanf("%c", &input);
scanf("%c", &trash);
尽管有效,但看起来效率很低而且很不雅。有建议吗?
答案 0 :(得分:2)
在使用%c
格式说明符(该格式说明符将匹配任何字符,包括空格)时,通常需要在格式字符串中在%c
之前放置一个空格。这将吸收任意数量的空格字符。
scanf(" %c", &input);