why not an `std::string` instead ?
It takes less memory, and is less error prone.