Achar**
是指向 a 的指针char*
。这意味着 a 的值是 achar**
的地址char*
。a 的值char*
是存储在内存中的字符数组中第一个元素的地址。
所以在下面的代码中:
char* words[3];
是一个包含 3 个指向字符数组的指针的数组,也就是char*
.char** ppc;
是一个指针char*
我的问题是你如何分配ppc = words
什么时候words
是一个char*
s数组。
char* words[LENGTH];
int main(int argc, char **argv) {
char** ppc;
words[0] = "one";
words[1] = "two";
words[2] = "three";
for (int i =0; i < LENGTH; i++) {
printf("%s\n", words[i]);
}
ppc = words;
return 0;
}