cin.get()和cin.getline(有什么区别)
时间: 2024-02-26 21:42:36 浏览: 100
基于C++ cin、cin.get()、cin.getline()、getline()、gets()函数的使用详解
5星 · 资源好评率100%
cin.get()和cin.getline()都是从标准输入流中读取字符,但是它们的用法和区别如下:
1. cin.get()方法:
它是一个成员函数,用于从输入流中读取一个字符,包括空格和换行符,直到遇到换行符或文件结尾。一般情况下,我们可以使用cin.get()方法读取单个字符,其语法如下:
cin.get([字符变量名]);
例如:
char c;
cin.get(c); // 从输入流中读取一个字符,并将其存储在变量c中
2. cin.getline()方法:
cin.getline()方法也是从输入流中读取字符,但它会一直读取字符,直到遇到换行符或者指定的分隔符,且不包括换行符,最多读取n-1个字符(其中n为传递给该函数的第二个参数)。一般情况下,我们可以使用cin.getline()方法读取一行字符串,其语法如下:
cin.getline([字符串变量名], [字符数], [分隔符]);
例如:
char str[20];
cin.getline(str, 20); // 从输入流中读取一行字符串,并将其存储在变量str中,最多读取19个字符
总结:
cin.get()方法用于读取单个字符,包括空格和换行符,cin.getline()方法用于读取一行字符串,不包括换行符。
阅读全文