读书人

怎么清空输入流

发布时间: 2012-03-17 19:06:28 作者: rapoo

如何清空输入流

C/C++ code
    while (scanf("%f%f",&x,&y))    {        scanf("%s",name);        p = (City *)malloc(sizeof(City));        if (p == NULL)        {            printf("分配内存失败\n");            exit(1);        }        p->cityX = x;        p->cityY = y;        strcpy(p->cityName, name);        r->next = p;        p->next = NULL;        r = p;    }    fflush(stdin);


当程序输入的不是浮点数的时候,跳出循环,那些数据是否还留着输入流中?
我用fflush(stdin)后,还是不能解决,在我输入其它内容之前,程序就跳过那一段过程了?

[解决办法]
C/C++ code
        if (p == NULL)        {            printf("分配内存失败\n");            exit(-1);//试试-1        }
[解决办法]
记得以前看到哪里写道
fflush(stdin)
并不是很好用。。。。。

读书人网 >C语言

热点推荐