Namespaces
Variants
Actions

std::ends

From cppreference.com
< cpp‎ | io‎ | manip
 
 
 
Input/output manipulators
Floating-point formatting
Integer formatting
Boolean formatting
Field width and fill control
Other formatting
Whitespace processing
ends
Output flushing
Status flags manipulation
Time and money I/O
(C++11)
(C++11)
(C++11)
(C++11)
Quoted manipulator
(C++14)
 
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 expression such as out << std::ends for any out of type std::basic_ostream.

Contents

[edit]Notes

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

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

[edit]Parameters

os - reference to output stream

[edit]Return value

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

[edit]Example

#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

[edit]See also

(deprecated in C++98)(removed in C++26)
implements character array output operations
(class)[edit]
close