【问题标题】:Is there any external input key that I can give to the console to stop the loop是否有任何外部输入键可以提供给控制台以停止循环
【发布时间】:2017-10-07 15:54:59
【问题描述】:

在执行这个 sn-p 时,无论我给出什么输入,控制台都不会停止获取输入,是否有任何可能的方法可以通过输入到 stdin 来终止这个 sn-p。

#include<stdio.h>
 void main()
{
char s1[100];
scanf("%[^EOF]s",s1);
   or
scanf("[^\0]s",s1);
printf("%s",s1);
}

【问题讨论】:

  • 只使用"%99s"? scanf 函数将停止读取空格,例如换行符。如果你想读一整行,那么也许改用fgets
  • @Annabelle 抱歉,这个问题没有答案

标签: c string


【解决方案1】:
scanf("%[^EOF]", s1);

这意味着任何字符都将被视为字符串的一部分,除了 EOF。要终止字符串,您应该输入 EOF 字符,在 Unix/Linux 系统上为 Ctrl+D。

【讨论】:

  • 对不起,没有回答我的问题。我试过 Ctrl+D 这也是输入,并像这样打印在控制台上 ^D。
猜你喜欢
  • 2019-11-03
  • 2021-05-03
  • 1970-01-01
  • 2016-07-12
  • 2011-08-26
  • 2021-09-19
  • 1970-01-01
  • 2021-04-21
  • 2015-07-30
相关资源
最近更新 更多