Solaris Studio 正在生成最令人费解的错误消息。
158 char* inbufptr = buffer;
159 char* outbufptr = outbuf;
160
161 const char** inbufptrpos = &inbufptr;
错误信息是:
第 161 行:错误:无法使用 char** 来初始化 const char**。
为什么添加constness 会成为问题?我卡住了,请帮帮我...
memory: [m y _ c h a r _ a r r a y | inbufptr | inbufptr_pos]
^ ^
| (1) | (2)
inbufptr inbufptrpos
指针 char* inbufptr 指向数组的开头,并且不承诺保持任何常量。
现在,如果我现在有一个指针 char const **inbufptr_pos 这种类型保证不会更改数组的内容,但我仍然可以更改指针指向的位置。如果我这样做,我没有更改数组,我看不出有什么问题。