小白看缓冲区
顾名思义 其为计算机用来缓冲的区域,那为什么计算机要有缓冲区呢;
他在最大的优点是可以为cpu腾出空间增加运算效率;
例如你在欣赏影视作品时,你的播放器总是可以为你缓存进度条,这时你的电脑cpu就可以在你还没看完进度条的期间里做别的事情
这样大大提升了电脑的运行速度。
标题缓冲区在c语言的应用中是比较广的。
如果你不慎用错的话将会带来意想不到的偏差。例如下面这个函数
第一次你在scanf函数中输入man他直接结束了,并没有执行下一步。
其实从计算机的视角看来他已经执行了所有的语句,在输入man之后你的回车也一并进入了缓冲区,由于scanf函数只能接受字符串,所以你的回车还留在了缓冲区内,这时gets函数从缓冲区接收了回车并交给了puts函数输出,结果就打印了一个换行然后结束程序。
但只要我用getchar()函数先把这个回车接收掉,那接下来就可以正常运行程序了