man*_*ama 1 c string standards
我只是略读C99标准,寻找我现在不记得的东西,当我注意到从strerror函数返回的指针(第7.12.6.2节)不是const限定的,即使标准说:
strerror函数返回一个指向字符串的指针,该字符串的内容是
特定于语言环境的.指向的数组不应被程序修改,
但可能会被后续的strerror函数调用覆盖.
是否有一个明显的原因,这个函数返回一个可修改的字符串,而不是像:
char const * const strerror(int errnum);
Run Code Online (Sandbox Code Playgroud)
或者至少
char const * strerror(int errnum);
Run Code Online (Sandbox Code Playgroud)
谢谢.