循环下scanf只读取第一个输入问题

今天在linux下使用scanf读入数据时,出现读入错误问题,每次都是第一次循环正常,第二次循环读数出错,scanf返回值为0,表明未成功读入一个数据;知道是输入缓冲区没清空,但是不知道gcc下ffush是无效的!!!!!

后来从用下面的语句清空缓冲区后一切正常

int c;
        while ((c=getchar()) != '\n' && c != EOF);

特此记录

你可能感兴趣的:(linux,C++)