这里只讨论用ungetc将字符传入stdin时的情况
1.传回的字符是以压栈形式 后入先出
传入多个字符如'131',也是读取末尾的字符1
2.如果stdin没有字符 传回后会开启一个缓冲区 大小为1 必须在被getchar后才能下次ungetc 否则传入失败
但当stdin本来就有字符未读取完时 如getchar留有多个字符未被读取时 缓冲区大小将是getchar时输入的大小 这时候可以多次ungetc直到缓冲区被填满为止
这里只讨论用ungetc将字符传入stdin时的情况
1.传回的字符是以压栈形式 后入先出
传入多个字符如'131',也是读取末尾的字符1
2.如果stdin没有字符 传回后会开启一个缓冲区 大小为1 必须在被getchar后才能下次ungetc 否则传入失败
但当stdin本来就有字符未读取完时 如getchar留有多个字符未被读取时 缓冲区大小将是getchar时输入的大小 这时候可以多次ungetc直到缓冲区被填满为止