首先介绍输入操作的原理:
程序的输入都建有一个缓冲区,即输入缓冲区。一次输入过程是这样的,当一次键盘输入结束时()即按下Enter键后)会将输入的数据存入输入缓冲区。
当键盘输入一串字符串时,例如“Hello World!”,键入回车,将“Hello World!”存到输入缓冲区中,包括最后的回车。
scanf()从输入缓冲区中读取值,遇到回车、空格、TAB就会自动停止,后面的字符会自动停留在缓冲区中,但是scanf会舍弃回车、空格、TAB符,字符串接受结束后自动加'\0'。
getchar()从缓冲区中读入一个字符,以Enter结束输入,不会舍弃最后的回车符。
get()以Enter结束输入,接受空格,会舍弃最后的回车符。