c++,使用while ((zfc = getchar()) != '\n')后,变量zfc的第一个个字符总是读不出来?

局部代码如图1。代码目的是以一串日期为钥匙,通过改变ascii码对字符串进行加密,故用while ((zfc = getchar()) != '\n')读取要加密内容。但是getchar读取时总是漏掉第一个字符,运行效果如图2,本应该加密为ciq345!@#,但是第一个小写c就被吞掉了。为什么呢?
最新回答
ミー身王八气▔,▔

2024-10-13 10:19:21

把cin>>zfc;改为zfc=getchar();

用于吸收掉上次的回车符