std::basic_istream::get
Материал из cppreference.com
< cpp | io | basic istream
![]() |
Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
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.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Все версии ведут себя как
1) UnformattedInputFunction
s. После построения и проверки часового объекта, эти функции выполнить следующие действия:Оригинал:
All versions behave as
UnformattedInputFunction
s. After constructing and checking the sentry object, these functions perform the following:Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
читает один символ и возвращает его, если доступно. В противном случае, возвращается Traits::eof() и наборы
2) failbit
и eofbit
.Оригинал:
reads one character and returns it if available. Otherwise, returns Traits::eof() and sets
failbit
and eofbit
.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
читает один символ и сохраняет его в
3) ch
если таковые имеются. В противном случае, оставляет ch
немодифицированных и устанавливает failbit
и eofbit
. Обратите внимание, что эта функция не перегружена на типы signed char и unsigned char, в отличие от оператора operator>>.Оригинал:
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>>.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
так же, как get(s, count, widen('\n')), то есть читает не более count-1 символы и сохраняет их в строку символов, на которую указывает
4) 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.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
читает символы и сохраняет их в последовательные мест массив символов, первый элемент, на который указывает
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:Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
- N-1 символов были сохраненыОригинал:n-1 characters have been storedТекст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
- конец файла состояние возникает во входной последовательности (setstate(eofbit) называется)Оригинал:end of file condition occurs in the input sequence (setstate(eofbit) is called)Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
- следующий доступный ввода символов
c
равноdelim
, как это определено Traits::eq(c, delim). Этот символ не извлекаются (в отличие от basic_istream::getline())Оригинал:the next available input characterc
equalsdelim
, as determined by Traits::eq(c, delim). This character is not extracted (unlike basic_istream::getline())Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Если символы не были извлечены, называет setstate(failbit). В любом случае, если
5) 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.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Же, как get(strbuf, widen('\n')), то есть читает доступных символов и вставляет их в данном basic_streambuf объект, пока '\n' найден..
6) Оригинал:
same as get(strbuf, widen('\n')), that is, reads available characters and inserts them to the given basic_streambuf object until '\n' is found.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
читает символы и вставляет их в выходной последовательности контролируется данного объекта 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:Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
- конец файла состояние возникает во входной последовательностиОригинал:end of file condition occurs in the input sequenceТекст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
- вставить... выходной последовательности не удается (в этом случае характера, которые не могли быть вставлены, не извлекается)Оригинал:insert into the output sequence fails (in which case the character that could not be inserted, is not extracted)Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
- следующего доступного ввода символов
c
равноdelim
, как это определено Traits::eq(c, delim). Этот персонаж не извлекается.Оригинал:the next available input characterc
equalsdelim
, as determined by Traits::eq(c, delim). This character is not extracted.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
- происходит исключение (в этом случае исключение ловится, а не вызвано повторно)Оригинал:an exception occurs (in which case the exception is caught and not rethrown)Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Если символы не были извлечены, звонки setstate(failbit).
Оригинал:
If no characters were extracted, calls setstate(failbit).
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Все версии установите значение
gcount()
на количество символов, извлеченных.Оригинал:
All versions set the value of
gcount()
to the number of characters extracted.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Содержание |
[править] Параметры
ch | — | ссылка на символ, чтобы написать результат
Оригинал: reference to the character to write the result to Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
s | — | Указатель на строку символов для хранения символов
Оригинал: pointer to the character string to store the characters to Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
count | — | Размер символьной строки, на которую указывает
s Оригинал: size of character string pointed to by s Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
delim | — | символ-разделитель, чтобы остановить добычу на. Это не извлекаются и не хранится .
Оригинал: delimiting character to stop the extraction at. It is not extracted and not stored. Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
strbuf | — | Поток буфер для чтения содержимого
Оригинал: stream buffer to read the content to Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
[править] Возвращаемое значение
1)извлеченный символ или Traits::eof()
Оригинал:
the extracted character or Traits::eof()
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
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 Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. (public функция-элемент) | |
извлекает форматированные данные из потока ввода std::basic_istream (public функция-элемент) | |
извлекает форматированные данные из потока ввода std::basic_istream (шаблон функции) |