Я только начал изучать указатели на C. Я нашел что-то особенное и получил ошибку об этом коде. Можете ли вы помочь мне выяснить, почему ошибка "Ошибка сегментации" № 9 вызывает
#include<stdio.h>
int main() {
int a[] = {10, 20, 30, 40, 50};
int *p[] = {a, a+1, a+2, a+3, a+4};
int **pp = p;
int ***ppp = &pp;
printf("\n === Part1 === \n\n");
printf(" 0. %p\n", a);
printf(" 1. %p\n", *p);
printf(" 2. %p\n", *pp);
printf(" 3. %p\n", **ppp);
printf("\n === Part2 === \n\n");
printf(" 4. %d\n", *p[0]);
printf(" 5. %d\n", *pp[0]);
printf(" 6. %d\n", **ppp[0]);
printf("\n === Part3 === \n\n");
printf(" 7. %d\n", *p[3]);
printf(" 8. %d\n", *pp[3]);
printf(" 9. %d\n", **ppp[3]);
printf("\n");
return 0;
}