首页 > 解决方案 > Scanf 在 c 中的 while 循环的第二次迭代之前不保存变量

问题描述

我试图让我的while循环在“action”等于“CE”时中断。

while(1){
    scanf("%s\n", action);
    if(strcmp(action, "CE")==0){
      break;
    ...
    }

但是,当我输入“CE”时,我的循环不会中断,而是会运行我的 while 循环,然后在再次要求我输入“动作”后中断。

为什么这样做以及如何让它在 scanf 语句之后立即中断?

标签: cwhile-loopscanf

解决方案


推荐阅读