C++中cin.get()的使用方法?

来源:百度知道 编辑:UC知道 时间:2024/09/21 00:31:15
使用cin.get(数组名,长度,结束符)时,书上写道:如果输入的字符串长度要大于指定长度会报错。不是很了解其报错时间,即是一个字符一个字符的读直到超过长度报错,还是一次性读完至遇到结束符时停止才报错?还有,指定的长度包不包括字符串结束标志’\0’,也就是说如果归定长度为10个字符,是最多可读10个还是9个?当字符数组的长度正好为10时又该如何?

cin.get(str,count,delim)从cin中抽取最多count-1个字符,放到str指定的位置上。如果输入的字符串长度大于count,不会报错的,书上说的不够严谨。cin.get()逐个读入字符,当碰到如下情况之一则停止读入:
1、文件结束符;
2、如果读入的字符与delim相同,此时该字符还将被放回输入缓冲区中;
3、已经读入了count-1个字符。
当读入结束时,cin.get()将自动填入字符'\0'。所以,如果规定长度为10个字符,那么最多可读入9个字符。