cin遇见空格/回车时停止读取,并且缓冲区会留下空格/回车。
cin.get(char*数组首地址,int限定字符长度(实际限定读取字符长度是它-1,因为最后一个字符自动为‘\0’),char结束符),碰到结束符停止(默认情况下结束符是回车),且不会把结束符丢掉,结束符依然存在输入缓冲区。
cin.getline(char*数组首地址,int限定字符长度(实际限定读取字符长度是它-1,因为最后一个字符自动为‘\0’),char结束符),会把结束符抛弃,若输入字符长度超过字数限制会报错(就算不报错也会出现莫名其妙结果,建议用的时候字符限制开大点)。
头文件:#include<string> getline(istream is,string str,char结束符),会把结束符抛弃。
不懂的人去看详细版(这个人讲的大致都对,只是个别描述有些问题但不影响你去理解这四种):
我用#CSDN#这个app发现了有技术含量的博客,小伙伴们求同去《cin、cin.get()、cin.getline()、getline()的区别》, 一起来围观吧 https://blog.csdn.net/a3192048/article/details/80303547?utm_source=app&app_version=5.0.1&code=app_1562916241&uLinkId=usr1mkqgl919blen