std::basic_istream::get

来自cppreference.com
< cpp‎ | io‎ | basic istream

 
 
 
std::basic_istream
全局对象
原文:
Global objects
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
成员函数
原文:
Member functions
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
格式化的输入
原文:
Formatted input
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
未格式化的输入
原文:
Unformatted input
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
basic_istream::get
定位
原文:
Positioning
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
杂项
原文:
Miscellaneous
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
会员类别
原文:
Member classes
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
非成员函数
原文:
Non-member functions
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
 
int_type get();
(1)
basic_istream& get( char_type& ch );
(2)
basic_istream& get( char_type* s, std::streamsize count );
(3)
basic_istream& get( char_type* s, std::streamsize count, char_type delim );
(4)
basic_istream& get( basic_streambuf& strbuf );
(5)
basic_istream& get( basic_streambuf& strbuf, char_type delim );
(6)
提取字符或字符流.
原文:
Extracts character or characters from stream.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
所有版本的行为为UnformattedInputFunctions。在构造和检查岗哨对象的,这些函数执行以下操作:
原文:
All versions behave as UnformattedInputFunctions. After constructing and checking the sentry object, these functions perform the following:
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
1)
读取一个字符,如果有返回。否则,返回Traits::eof()和的套failbiteofbit.
原文:
reads one character and returns it if available. Otherwise, returns Traits::eof() and sets failbit and eofbit.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
2)
读出一个字符,并且将它存储到ch如果可用。否则,叶ch不变并设置failbiteofbit。请注意,此功能不超载signed charunsigned char的类型,不同的格式化字符输入操作符>>.
原文:
reads one character and stores it to ch if available. Otherwise, leaves ch unmodified and sets failbit and eofbit. Note that this function is not overloaded on the types signed char and unsigned char, unlike the formatted character input operator>>.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
3)
get(s, count, widen('\n'))相同,即,读取至多count-1字符,并将它们存储到字符串所指向s直到'\n'发现.
原文:
same as get(s, count, widen('\n')), that is, reads at most count-1 characters and stores them into character string pointed to by s until '\n' is found.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
4)
读取字符,并将它们存储到连续位置的字符数组的第一个元素是指向s。字符提取和存储,直至出现以下任何情况
原文:
reads characters and stores them into the successive locations of the character array whose first element is pointed to by s. Characters are extracted and stored until any of the following occurs:
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
  • n-1个的字符已经被存储
    原文:
    n-1 characters have been stored
    文本通过谷歌翻译机器翻译。
    你可以帮忙校正和验证翻译。点击此处查看指示。
  • 结束文件的情况发生在输入序列(setstate(eofbit)被调用)
    原文:
    end of file condition occurs in the input sequence (setstate(eofbit) is called)
    文本通过谷歌翻译机器翻译。
    你可以帮忙校正和验证翻译。点击此处查看指示。
  • 下一个可用的输入字符c等于delim,由Traits::eq(c, delim)。这个字是没有提取(不像basic_istream::getline()
    原文:
    the next available input character c equals delim, as determined by Traits::eq(c, delim). This character is not extracted (unlike basic_istream::getline())
    文本通过谷歌翻译机器翻译。
    你可以帮忙校正和验证翻译。点击此处查看指示。
如果没有字符提取,调用setstate(failbit)。在任何情况下,如果count>0阵列连续的下一个位置,被存储在一个空字符(CharT().
原文:
If no characters were extracted, calls setstate(failbit). In any case, if count>0, a null character (CharT() is stored in the next successive location of the array.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
5)
相同get(strbuf, widen('\n')),即,读取可用字符,并将它们插入到给定的basic_streambuf对象,直到'\n'发现.
原文:
same as get(strbuf, widen('\n')), that is, reads available characters and inserts them to the given basic_streambuf object until '\n' is found.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
6)
读取字符,并将它们插入到由给定的basic_streambuf对象控制的输出序列的字符被提取和插入strbuf直到任何会发生以下情况:
原文:
reads characters and inserts them to the output sequence controlled by the given basic_streambuf object. Characters are extracted and inserted into strbuf until any of the following occurs:
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
  • 结束文件的条件发生在输入序列中
    原文:
    end of file condition occurs in the input sequence
    文本通过谷歌翻译机器翻译。
    你可以帮忙校正和验证翻译。点击此处查看指示。
  • 插入输出顺序发生故障时(在这种情况下,不能被插入的字符,还没有提取)
    原文:
    insert into the output sequence fails (in which case the character that could not be inserted, is not extracted)
    文本通过谷歌翻译机器翻译。
    你可以帮忙校正和验证翻译。点击此处查看指示。
  • 的下一个可用的输入字符c等于delim,所确定的Traits::eq(c, delim)该字还没有提取.
    原文:
    the next available input character c equals delim, as determined by Traits::eq(c, delim). This character is not extracted.
    文本通过谷歌翻译机器翻译。
    你可以帮忙校正和验证翻译。点击此处查看指示。
  • 发生异常(在这种情况下,异常被捕获并重新抛出)
    原文:
    an exception occurs (in which case the exception is caught and not rethrown)
    文本通过谷歌翻译机器翻译。
    你可以帮忙校正和验证翻译。点击此处查看指示。
如果没有字符提取,呼叫setstate(failbit).
原文:
If no characters were extracted, calls setstate(failbit).
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
所有版本gcount()提取的字符的数目设置的值.
原文:
All versions set the value of gcount() to the number of characters extracted.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

目录

[编辑] 参数

ch -
引用的字符写的结果
原文:
reference to the character to write the result to
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
s -
指针的存储的字符的字符串
原文:
pointer to the character string to store the characters to
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
count -
所指向的字符串的大小s
原文:
size of character string pointed to by s
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
delim -
分隔符,停止提取的。还没有提取的,而不是存储.
原文:
delimiting character to stop the extraction at. It is not extracted and not stored.
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。
strbuf -
流缓冲区读取的内容
原文:
stream buffer to read the content to
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

[编辑] 返回值

1)
所提取的字符或Traits::eof()
原文:
the extracted character or Traits::eof()
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

2-6) *this

[编辑] 示例

#include <sstream>
#include <iostream>
int main()
{
    std::istringstream s1("Hello, world.");
    char c1 = s1.get(); // reads 'H'
    std::cout << "after reading " << c1 << ", gcount() == " <<  s1.gcount() << '\n';
    char c2;
    s1.get(c2);         // reads 'e'
    char str[5];
    s1.get(str, 5);     // reads "llo,"
    std::cout << "after reading " << str << ", gcount() == " <<  s1.gcount() << '\n';
    std::cout << c1 << c2 << str;
    s1.get(*std::cout.rdbuf()); // reads the rest, not including '\n'
    std::cout << "\nAfter the last get(), gcount() == " << s1.gcount() << '\n';
}

输出:

after reading H, gcount() == 1
after reading llo,, gcount() == 4
Hello, world.
After the last get(), gcount() == 7

[编辑] 另请参阅

读取字符块
原文:
extracts blocks of characters
文本通过谷歌翻译机器翻译。
你可以帮忙校正和验证翻译。点击此处查看指示。

(公开成员函数) [编辑]
抽取带格式的数据
(公开成员函数) [编辑]
抽取字符和字符数组
(函数模板) [编辑]