The following code example is taken from the book
C++23 - The Complete Guide
by Nicolai M. Josuttis,
Leanpub, 2026
The code is licensed under a
Creative Commons Attribution 4.0 International License.
// raw code
#include <print>
#include <spanstream>
int main()
{
// fix-sized buffer initialized with 33 '?' and a null terminator:
constexpr int len = 33;
char buf[len+1]{};
for (int i = 0; i < len; ++i) buf[i] = '?';
std::println("buf: {:?}", buf);
// create a span stream to the whole static char buffer:
std::ospanstream strBuf{buf};
double d = 47.11;
strBuf << "double d: " << d;
std::println("buf: {:?}", buf);
strBuf << " <end>";
std::println("buf: {:?}", buf);
strBuf << '\0';
std::println("buf: {:?}", buf);
}