get
描述 (Description)
它用于获取角色。
声明 (Declaration)
以下是std :: basic_istream :: get的声明。
er (1)
int_type get();
basic_istream& get (char_type& c);
c-string (2)
basic_istream& get (char_type* s, streamsize n);
basic_istream& get (char_type* s, streamsize n, char_type delim);
stream buffer (3)
basic_istream& get (basic_streambuf<char_type,traits_type>& sb);
basic_istream& get (basic_streambuf<char_type,traits_type>& sb, char_type delim);
参数 (Parameters)
c - 对存储提取值的字符的引用。
s - 指向一个字符数组的指针,其中提取的字符存储为c字符串。
n - 要写入s的最大字符数(包括终止空字符)。
delim - 显式分隔字符:提取连续字符的操作在提取的下一个字符与此相等时立即停止(使用traits_type :: eq)。
sb - 一个basic_streambuf对象,在其受控输出序列中复制字符。
返回值 (Return Value)
如果流中没有可用的字符,则返回字符读取或文件结束值(traits_type :: eof())(请注意,在这种情况下,还会设置failbit标志)。
异常 (Exceptions)
Basic guarantee - 如果抛出异常,则对象处于有效状态。
数据竞争 (Data races)
修改c,sb或s指向的数组中的元素,并修改流对象。
例子 (Example)
在下面的示例中为std :: basic_istream :: get。
#include <iostream>
#include <fstream>
int main () {
char str[256];
std::cout << "Enter the name of an existing text file: ";
std::cin.get (str,256);
std::ifstream is(str);
char c;
while (is.get(c))
std::cout << c;
is.close();
return 0;
}