指向C中字符串的字符数组的指针

指向C中字符串的字符数组的指针,c,arrays,pointers,char,C,Arrays,Pointers,Char,我在一次初级职位的面试中被问到这一点,我很想知道为什么你需要两个指针。那是一次电话采访,他让我写了下来 字符**a[5] 问我这是什么 他告诉我,这是一个指向5个字符数组的指针,以便生成一个5个字符的字符串。我只是想理解为什么它是char**a[5],而不是char*a[5] 如果您将左右阅读规则应用于此。。。a是指向char指针的五个指针的数组。这是指向char指针的五个指针的数组。这里没有直接字符。如果他说这是一个指向五个字符数组的指针,要么你写错了,要么他写错了,要么两者都写错了。描述他的

我在一次初级职位的面试中被问到这一点,我很想知道为什么你需要两个指针。那是一次电话采访,他让我写了下来

字符**a[5]

问我这是什么


他告诉我,这是一个指向5个字符数组的指针,以便生成一个5个字符的字符串。我只是想理解为什么它是char**a[5],而不是char*a[5]

如果您将左右阅读规则应用于此。。。a是指向char指针的五个指针的数组。

这是指向char指针的五个指针的数组。这里没有直接字符。如果他说这是一个指向五个字符数组的指针,要么你写错了,要么他写错了,要么两者都写错了。描述他的合适的decl是
char(*a)[5]旁注:你的
char*a[5]
是一个指向char的五个指针的数组,因此这与他的描述也不匹配。这正是我写下来回答问题的方式。对不起,这是错误的,我没有逐字抄写他说的话,但重要的是他们用它来表示字符串。拥有指向字符的指针有什么好处。