String literals in C/C++ are always null terminated char* const
Did a check of the C++ Standard, and in section 2.13.4, it states:
"An ordinary string literal has type "array of n const char" and static storage duration, where n is the size of the string as defined below, and is initialized with the given characters."

The "as defined below" part is:
"The size of a wide string literal is the total number of escape sequences, universal-character-names, and other characters, plus one for the terminating L'\0'. The size of a narrow string literal is the total number of escape sequences and other characters, plus at least one for the multibyte encoding of each universal-character-name, plus one for the terminating '\0'."

From what I understand, a const char[n] array decays to a const char* pointer, not a char* const pointer.