gpt4 book ai didi

c - 如何在 C 中使用 [] 声明指向 const 字符数组的 Const 指针

转载 作者:行者123 更新时间:2023-11-30 18:51:43 26 4
gpt4 key购买 nike

const wikipedia article状态:

int *ptr; // *ptr is an int value
int const *ptrToConst; // *ptrToConst is a constant (int: integer value)
int * const constPtr; // constPtr is a constant (int *: integer pointer)
int const * const constPtrToConst; // constPtrToConst is a constant (pointer)

const int*       ptrToConst;     //identical to: int const *       ptrToConst,
const int* const constPtrToConst;//identical to: int const * const constPtrToConst

太棒了。

如果我使用 [] 而不是 * 来声明数组,这将如何应用?例如,如何转动以下内容:

char s[] = "Hello";

变成“指向 const 的 const 指针”?

最佳答案

在 C 中,当将限定符添加到数组声明中时,它会限定元素类型而不是数组本身。 C11 部分:§6.7.3/9

If the specification of an array type includes any type qualifiers, the element type is so- qualified, not the array type.[...]

因此,不可能声明 const 数据类型的 const 数组。

关于c - 如何在 C 中使用 [] 声明指向 const 字符数组的 Const 指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36250933/

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