2014-09-29 46 views
0

我想知道如何声明,基本上,在C99 (a const pointer to (a mutable pointer to (a const type)))如何声明一个常量“可变指针”的内存不可变块

比方说,我有这个调用点:

const uint8_t* result; 
create(&result); 

void create(const uint8_t * const * resultPtr)申报被叫方在这种情况下,正确的方法还是意味着什么意外?我不需要重新分配resultPtr,呼叫者不应该[从这个角度] *resultPtr[0]乱搞,但我的功能需要分配*resultPtr = …

回答

4

让我们问cdecl

$ cdecl declare p as const pointer to pointer to const char 
const char ** const p 

这个声明完全可以从右读向左获取英文版本(记住const charchar const是相同的)。

+0

哦,我已经忘记了所有关于cdecl。非常感谢! – natevw 2014-09-29 21:51:52