我只需要一个字符,如果用户输入了几个字符,如何打印错误信息?

时间:2015-12-09 02:48:07

标签: c input char scanf

  • 我使用scanf("%c",...)来获取用户的输入。
  • 我只需要一个字符,例如'1''Q'
  • 如果用户输入 2,5 1242 scanf可以获得第一个 字符。其他字符留在缓冲区中。但我不想要几个角色的第一个角色,我只是 需要一个字符
  • 我不知道如何处理这个条件然后打印错误 消息。

任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:0)

CurrentImage

答案 1 :(得分:0)

这有用吗? (扫描字符串而不是字符):

char buf[10];
printf("Enter a single character: ");
scanf("%s", buf);
if ( strlen( buf ) != 1 )
    printf("Error");