码迷,mamicode.com
首页 > 其他好文 > 详细

关于char类型的连续输入

时间:2016-03-19 00:56:48      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:

这个忘了好久了

先回想吧

一 单字符

①  char m;

     scanf("%d",&m);

② char m;

  m=getchar();

  putchar(m);

二 字符数组(字符串)

①   char a[10];

    int i;

      for(i=0;i<10;i++){

  scanf("%c",&a[i]);

      }

②   char a[10];

  gets(a[10]);

  puts(a[10]);

书本上的

我今天用的连续输入char o,p,q;

char o,p,q;

scanf("%c%c%c",&o,&p,&q);

结果lunix 里面没有被读出来o的量;技术分享

**********************************************************************

我知道了 要写一条scanf("%*c")清除输入缓冲区的回车键

田硕以前讲过 输入缓冲区的概念 当我输入的是 5,enter,abc(逗号起分隔作用并未在键盘输入)

scanf("%d",&m);

scanf("%c%c%c",&o,&p,&q);

是读入的 就是 5 enter a b(将enter读入了,没有读入c);

这的时候我要在第一个输入结束后清除输入缓冲区的数据scanf("%*c")

第二个scanf函数才不会读入enter,而是从a开始读入技术分享

**********************************************************************

  scanf("%*[^\n]") 把输入缓冲区中第一个换行字符前的数据全部丢弃,

  scanf("%*c")  把换行字符丢弃。

关于char类型的连续输入

标签:

原文地址:http://www.cnblogs.com/pertinencec/p/5294113.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!