lerrorgk 2017-08-11 07:54 采纳率: 25%
浏览 2329

这里的scanf("%*s");是什么作用

while ((status = scanf("%d", &code)) != 1 ||
           (code < 1 || code > 5))
  {
        if (status != 1)
              scanf("%*s");
        printf("Enter an integer from 1 to 5, please.\n");
  }
  • 写回答

4条回答 默认 最新

  • Tsui丶 2017-08-11 08:06
    关注

    scanf("%*s")表示跳至下一空白字符,这里主要是中间的*字符起的作用,*的标准解释是滞后赋值

    比如说 int n; scanf("%*d %*d %d",&n); printf("%d",n); return 0; 你输入的是1 2 3,那么输出的是3,因为前两个已经忽略啦。

    评论

报告相同问题?