home | help
std::ends(3)		       C++ Standard Libary		    std::ends(3)

NAME
     std::ends - std::ends

Synopsis
	Defined in header <ostream>
	template< class CharT, class Traits >
	std::basic_ostream<CharT,   Traits>&   ends(   std::basic_ostream<CharT,
     Traits>& os );

	Inserts a null character into the output sequence os as if by calling
	os.put(CharT()).

	This is an output-only I/O manipulator, it may be called with an expres-
     sion such as
	out << std::ends for any out of type std::basic_ostream.

Notes
	This manipulator is typically used with std::ostrstream, when the  asso-
     ciated output
	buffer needs to be null-terminated to be processed as a C string.

	Unlike std::endl, this manipulator does not flush the stream.

Parameters
	os - reference to output stream

Return value
	os (reference to the stream after insertion of the null character).

Example
     // Run this code

      #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
      }

Output:
      Sample text: 42

See also
	ostrstream	      implements character array output operations
	(deprecated in C++98) (class)
	(removed in C++26)

http://cppreference.com 	   2024.06.10			    std::ends(3)

home | help