gpt4 book ai didi

c - 如何向不可变内存块声明常量 "mutable pointer"

转载 作者:太空宇宙 更新时间:2023-11-04 06:26:36 25 4
gpt4 key购买 nike

我想知道如何在 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 = ....

最佳答案

让我们问cdecl :

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

此声明可以从右到左完整阅读以获得英文版本(记住 const charchar const 是相同的)。

关于c - 如何向不可变内存块声明常量 "mutable pointer",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26109474/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com