std::ends
Определено в заголовке <ostream> | ||
|---|---|---|
template< class CharT, class Traits > std::basic_ostream<CharT, Traits>& ends( std::basic_ostream<CharT, Traits>& os ); |
Вставляет нулевой символ в выходную последовательность os, как если бы вызов os.put(CharT()).
Это манипулятор ввода-вывода только для вывода, его можно вызывать с выражением, таким как out << std::ends для любого out типа std::basic_ostream.
Примечания
Этот манипулятор обычно используется с std::ostrstream, когда связанный буфер вывода должен завершаться нулём, чтобы обрабатываться как строка C.
В отличие от std::endl, этот манипулятор не сбрасывает поток.
Параметры
| os | - | ссылка на выходной поток |
Возвращаемое значение
os (ссылка на поток после вставки нулевого символа).
Пример
#include <cstdio>
#include <strstream>
int main()
{
std::ostrstream oss;
oss << "Sample text: " << 42 << std::ends;
std::printf("%s\n", oss.str());
oss.freeze(false); // enable memory deallocation
}Вывод:
Sample text: 42
См. также
|
(устаревший в C++98) | реализует операции вывода в массивы символов (класс) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/io/manip/ends