非缓冲 和 全缓冲

非缓冲 和 全缓冲
非缓冲:不需要flush函数刷新,直接从缓冲区自动补上了

#include<stdio.h>
#include<stdlib.h>

int main(){
       printf( "%d\n", *(stdin ->_ptr)); //打印换成区内容  \0 -> 0
       printf( "%d\n", stdin ->_cnt);//缓冲区还有多少个字节
       char ch = getchar();        //输入123 会把1提走 缓冲区剩余23 注意缓冲区大小为3 因为末尾有回车\n
       printf( "%p\n", stdin ->_ptr);
       printf( "%c\n", *(stdin ->_ptr));
       printf( "%d\n", stdin ->_cnt);
       char ch2 = getchar();       //会把2提走 缓冲区剩余3 注意缓冲区大小为2 因为末尾有回车\n
       printf( "%p\n", stdin ->_ptr);
       printf( "%c\n", *(stdin ->_ptr));
       printf( "%d\n", stdin ->_cnt);
       system( "pause");
       return 0;
}



全缓冲:读取文件的时候,需要flush函数刷新










posted @ 2015-05-26 19:15  外禅内定,程序人生  阅读(153)  评论(0编辑  收藏  举报