C指向常量const指针数组的指针

前端之家收集整理的这篇文章主要介绍了C指向常量const指针数组的指针前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经创建了const指针的const数组,如下所示:
const char* const sessionList[] = {
    dataTable0,dataTable1,dataTable2,dataTable3
};

这个数组的常规非const指针的正确语法是什么?我认为它将是const char **,但编译器认为不然.

解决方法

const char* const sessionList[] = { ... };

写得更好:

char const* const sessionList[] = { ... };

sessionList [0]的类型是char const * const.
因此,& sessionList [0]的类型是char const * const *.

您可以使用:

char const* const* ptr = &sessionList[0];

要么

char const* const* ptr = sessionList;

这声明了一个指向sessionList元素的指针.如果要声明指向整个数组的指针,则需要:

char const* const (*ptr)[4] = &sessionList;

猜你在找的C&C++相关文章