Characters and Strings
C++ supports C-style strings—plain C-style character arrays terminated with a null character ('\0', with ASCII code zero). The C Standard Library offers various headers with functions to manipulate such strings. Working directly with C-style strings, however, has serious drawbacks. Analogous to working with plain arrays (compared to working with, say, std::vector), a C-style string doesn’t know its own size, and it is your job to allocate the required memory. It also falls to you to ensure these C-style strings are, and always remain, properly null-terminated. We therefore recommend you do not work directly with C-style strings, and use the container-like abstractions offered by the C++ Standard Library instead.