Namespaces
Variants

std:: ends

From cppreference.net
< cpp ‎ | io ‎ | manip
Определено в заголовочном файле <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

Смотрите также

(deprecated in C++98) (removed in C++26)
реализует операции вывода в массив символов
(класс)