
- C++ Library - Home
- C++ Library - <fstream>
- C++ Library - <iomanip>
- C++ Library - <ios>
- C++ Library - <iosfwd>
- C++ Library - <iostream>
- C++ Library - <istream>
- C++ Library - <ostream>
- C++ Library - <sstream>
- C++ Library - <streambuf>
- C++ Library - <atomic>
- C++ Library - <complex>
- C++ Library - <exception>
- C++ Library - <functional>
- C++ Library - <limits>
- C++ Library - <locale>
- C++ Library - <memory>
- C++ Library - <new>
- C++ Library - <numeric>
- C++ Library - <regex>
- C++ Library - <stdexcept>
- C++ Library - <string>
- C++ Library - <thread>
- C++ Library - <tuple>
- C++ Library - <typeinfo>
- C++ Library - <utility>
- C++ Library - <valarray>
- The C++ STL Library
- C++ Library - <array>
- C++ Library - <bitset>
- C++ Library - <deque>
- C++ Library - <forward_list>
- C++ Library - <list>
- C++ Library - <map>
- C++ Library - <multimap>
- C++ Library - <queue>
- C++ Library - <priority_queue>
- C++ Library - <set>
- C++ Library - <stack>
- C++ Library - <unordered_map>
- C++ Library - <unordered_set>
- C++ Library - <vector>
- C++ Library - <algorithm>
- C++ Library - <iterator>
- The C++ Advanced Library
- C++ Library - <any>
- C++ Library - <barrier>
- C++ Library - <bit>
- C++ Library - <chrono>
- C++ Library - <cinttypes>
- C++ Library - <clocale>
- C++ Library - <condition_variable>
- C++ Library - <coroutine>
- C++ Library - <cstdlib>
- C++ Library - <cstring>
- C++ Library - <cuchar>
- C++ Library - <charconv>
- C++ Library - <cfenv>
- C++ Library - <cmath>
- C++ Library - <ccomplex>
- C++ Library - <expected>
- C++ Library - <format>
- C++ Library - <future>
- C++ Library - <flat_set>
- C++ Library - <flat_map>
- C++ Library - <filesystem>
- C++ Library - <generator>
- C++ Library - <initializer_list>
- C++ Library - <latch>
- C++ Library - <memory_resource>
- C++ Library - <mutex>
- C++ Library - <mdspan>
- C++ Library - <optional>
- C++ Library - <print>
- C++ Library - <ratio>
- C++ Library - <scoped_allocator>
- C++ Library - <semaphore>
- C++ Library - <source_location>
- C++ Library - <span>
- C++ Library - <spanstream>
- C++ Library - <stacktrace>
- C++ Library - <stop_token>
- C++ Library - <syncstream>
- C++ Library - <system_error>
- C++ Library - <string_view>
- C++ Library - <stdatomic>
- C++ Library - <variant>
- C++ STL Library Cheat Sheet
- C++ STL - Cheat Sheet
- C++ Programming Resources
- C++ Programming Tutorial
- C++ Useful Resources
- C++ Discussion
C++ Ostream::flush() function
The C++ std::ostream::flush() function is used to clear the output buffer of an output stream, ensuring that all the data is written to the intended destination immediately. This function can be invoked using the flush manipulator, like std::cout <<std::flush;.
Flushing can also automatically when the stream is closed, when the buffer is full, or at specific points defined by the system.
Syntax
Following is the syntax for std::ostream::flush() function.
ostream& flush();
Parameters
It does not accepts any parameter.
Return Value
It returns the ostream object (*this).
Exceptions
If an exception is thrown, the object is in a valid state.
Data races
Modifies the stream object.
Example
In the following example, we are going to consider the basic usage of the flush() function.
#include <iostream> int main() { std::cout << "Hi" << std::flush; return 0; }
Output
Output of the above code is as follows −
Hi
Example
Consider the following example, where we are going to perform flushing after each character.
#include <iostream> int main() { for (char x = 'C'; x <= 'G'; ++x) { std::cout << x << std::flush; } return 0; }
Output
Following is the output of the above code −
CDEFG
Example
Let's look at the following example, where std::cout is flushed after the prompt "Enter your name:".
#include <iostream> int main() { std::cout << "Enter Name : " << std::flush; std::string a; std::cin >> a; std::cout << "Welcome, " << a << std::endl; return 0; }
Output
If we run the above code it will generate the following output −
Enter Name : Mr.X Welcome, Mr.X