我总是搞砸了怎么用const int*
,const int * const
和int const *
正确的。是否有一组规则定义您可以做什么和不能做什么?
我想知道在分配,传递给函数等方面所有需要做的事情。
int *(*)(char const * const)
。从括号的右边开始,*
然后我们必须向左移动:pointer
。在括号外,我们可以向右移动:pointer to function of ...
。然后我们必须向左移动:pointer to function of ... that returns pointer to int
。重复扩大参数(...
)pointer to function of (constant pointer to constant char) that returns pointer to int
。像Pascal这样的易读语言中等效的单行声明是什么?
function(x:^char):^int
。函数类型隐含了指向函数的指针,因此无需指定它,并且Pascal不会强制执行const正确性。可以从左到右读取。