一段小程序理解getchar和putchar

#include "stdafx.h"
#include <iostream>
using namespace std;

int main()
{
   char c,d,e,f; 

    printf("please input two characters:\n"); 

    c=getchar(); 
    putchar(c); 
    putchar('\n'); 
    d=getchar(); 
    putchar(d); 
    putchar('\n'); 
    e=getchar(); 
    putchar(e); 
	putchar('\n'); 
    f=getchar(); 
    putchar(f); 
    putchar('\n'); 

	printf("c= %c\n",c); 
    printf("d= %c\n",d); 
    printf("e= %c\n",e); 
    printf("f= %c\n",f);

    return 0;
}

输出截图

解释如下:

函数每次从缓冲区中得到一个字符,
putchar函数每次输出一个字符。
首先输入了两个字符12,然后回车,注意这时写入缓存中的有3个字符1,2,回车。
程序中有四个getchar(),于是c='1',d='2',e='\n'
这里输入了34 于是f='3',4和后面的回车没有被利用。
这便是整个流程。 

 

posted @ 2014-05-20 15:28  lance2008  阅读(380)  评论(0编辑  收藏  举报