簡體   English   中英

C ++指向const指針的const數組的指針

[英]C++ Pointer to const array of const pointers

我已經創建了const指針的const數組,如下所示:

const char* const sessionList[] = {
    dataTable0,
    dataTable1,
    dataTable2,
    dataTable3
};

這個數組的常規非const指針的正確語法是什么? 我認為它將是const char** ,但編譯器認為不然。

如果您確實需要一個指向數組的指針,正如標題所示,那么這就是語法:

const char* const (*ptr)[4] = &sessionList;
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元素的sessionList 如果要聲明指向整個數組的指針,則需要:

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

與為數組元素聲明的類型相同,添加了額外的*

const char* const *

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM