我是用指針坐立不安從指針thingy.graduated - >指針數組 - >函數指針 - >指針的指針..前進指針令人費解的語法
這裏是我停留在什麼...大多錯綜複雜句法。我想我有一個整數數組。
int arr[4] = {1,2,3..};
也我有指針
int* ptr[4];
ptr[0] = arr;
這裏的陣列的ptr [0]將指向1 和PTR [1]將指向某些其他位置
這工作完全!!
現在考慮上述背景我試過這個。
char* crr[4] ={"C","C++","C#","F#"};
char** btr[4];
btr[0] = crr;
它作爲指針在both的其他元素中指向crr中的另一個指針元素。
然後我試了一下。
char* crr[4] ={"C","C++","Java","VBA"};
char** btr[4]= &crr; // Exception: cannot convert char* [4] * to char**[4]
,但是當我這樣做它的工作原理:o
char* crr[4] ={"C","C++","Java","VBA"};
char* (*btr)[4]= &crr;
我不明白最後兩個場景。在RHS上使用括號請解釋。
N.B.在C++中,''C''是2'const' char *類型的*數組,並且在C++ 11中已經去除了轉換爲char *(w/o'const')的*指針。 – dyp