【发布时间】:2014-01-08 15:24:05
【问题描述】:
假设我们有这样的声明:
int **const*** k;
然后,它可以很好地按字面意思(根据 cdecl.org)翻译成
将 k 声明为指向指针的指针 指向 const 的指针 到int
但是,我仍然不确定它不允许什么?它限制了哪些操作?我们还能做吗
(***k)++
也就是说,在里面加const有什么效果?
还有...同样的问题
int *const**const* k;
会有什么不同?
谢谢!
【问题讨论】:
-
问个问题就好,但现实生活中不要做怪事,大家会讨厌你的。
-
有人引用过一句话:“C 语法对于教授琐事的老师和喜欢取笑该语言的人来说是一个福音,但实际上并不是问题”。
-
我在等人评论!实际上,我正在制作一种 C 解释器。因此,即使是最不寻常的类型,我也必须能够准确地复制!否则,我什至都懒得问了。
标签: c pointers constants variable-declaration