Why can’t I convert ‘char**’ to a ‘const char* const*’ in C?

I had this same problem a few years ago and it irked me to no end.

The rules in C are more simply stated (i.e. they don’t list exceptions like converting char** to const char*const*). Consequenlty, it’s just not allowed. With the C++ standard, they included more rules to allow cases like this.

In the end, it’s just a problem in the C standard. I hope the next standard (or technical report) will address this.

Leave a Comment