Mam problem ze zrozumieniem pewnego zagadnienia, a mianowicie załóżmy, że mamy taki kod:
#include <stdio.h>
int main() {
int tab[4][2];
tab[0][0] = 0;
printf("tab == %p, *tab == %p, **tab == %d, &tab[0][0] == %p\n", tab, *tab, **tab, &tab[0][0]);
return 0;
}
po jego wykonaniu:
tab == 0022FF00, *tab == 0022FF00, **tab == 0, &tab[0][0] == 0022FF00
wynika zatem z tego, że tab to to samo co &tab[0][0], dlaczego zatem aby dojśc do wartości przechowywanej pod adresem 0022FF00
dla tab należy użyc podwójnej dereferencji?