В обычной программе c/С++ мы пишем основную функцию как
int main(int c, char **argv)
или
int main(int c, char *argv[])
Здесь argv представляет массив указателей, но мы даже представляем двойной указатель (указатель на указатель) с помощью **.
ex:
char p,*q,**r;
q=&p;
r=&q;
Здесь r - двойной указатель, а не массив указателей.
Может ли кто-нибудь объяснить разницу?