Potrzebujesz trochę pomocy w zrozumieniu, co dokładnie dzieje się w tym fragmencie kodu. Kiedy uruchamiam program drukuje 7.Opis macierzy C i wskaźników
#include <stdio.h>
int main() {
int a[] = {1,2,3,4,5,6,7,8,9};
int b[] = {1,2,3,4,5,6,7,8,9};
int c = 5;
int *p = a;
printf("--> %d", (c[b])[p]);
return 0;
}
jestem trochę zdezorientowany, gdy chodzi o (c [b]) [p] udział w instrukcji printf. Każda pomoc/wyjaśnienie byłaby bardzo doceniana.
'c [b]" oznacza to samo co '* (c + b)'. To powinno pomóc. – bzeaman
Możliwy duplikat [Czy nazwa tablicy jest wskaźnikiem w C?] (Http://stackoverflow.com/questions/1641957/is-array-name-a-pointer-in-c) – jww
@BennoZeeman Nie pamiętasz nawiasów. Są ważne. tj. zobacz aktualną odpowiedź. –