Null Terminated refers to any sequence whose end is denoted with a [[Null]] byte. The most common use of Null Terminated Sequences is a null terminated string, which is a array of characters ending in a [[Null]].
>[!note]
While this works in C, it offers a lot of vulnerabilities - specifically because if the null byte gets over written or is omitted - reading the string will go past the valid bounds and touch memory it shouldn’t.
>
>To avoid this problem, in [[C++]] (along with other languages such as [[Rust]]) we typically use `std::string` which is a [[Wide Pointer]], which is a class that internally contains a pointer to an array of characters, along with the length of that array. The [[CString]] example is an possible implementation of what `std::string` could look like.