当用户按下Enter键时,如何防止scanf()终止?

1 c scanf

如果按下输入键,scanf()此后停止输入。我尝试了很多方法:将数据更改为字符串,并将其与null进行比较,与ASCII进行比较。但是,我无法阻止scanf用户按下Enter键时终止。

R S*_*ahu 5

  1. 使用读取一行文字fgets
  2. 如果fgets能够正确读取线路,则用于sscanf从线路中读取号码。
  3. 如果sscanf成功,则使用该号码。否则,请转到错误处理代码。

char line[LINE_SIZE];
if ( fgets(line, LINE_SIZE, stdin) != NULL )
{
   int number;
   if ( sscanf(line, "%d", &number) == 1 )
   {
      // Use the number
   }
   else
   {
      // Deal with error
   }
}
Run Code Online (Sandbox Code Playgroud)