Ok tylko trochę tego nie rozumiem dlaczego nie jest brana skoro w a[0] też zapisuje zmienna.
Tak, tyle że pierwsze odczytanie następuje po inkrementacji licznika p
. Wystarczy sobie to prześledzić – inicjalizujesz p
wartością 0
, wchodzisz do pętli i od razu inkrementujesz p
, więc w tym momencie zawiera 1
. Następnie odczytujesz wartość komórki numer 1
, a więc drugiej.
@enedil słusznie zauważył, że wychodzisz poza zakres tablicy. W ostatniej iteracji pętli p
jest równe 9
, warunek jej działania zostaje spełniony, następnie zwiększasz p
o 1
(wtedy jest równe 10
) i odczytujesz wartość komórki. Ta o indeksie 10
nie istnieje, więc wczytujesz śmieci z pamięci.
Swój pierwotny kod możesz poprawić na wiele sposobów, jednak jeśli już chcesz zostać przy inicjalizacji iteratora wartością 0
, to musisz przenieść p++
na koniec ciała pętli.
aa i ktoś by mi mógł wyjaśnić co oznacza apostrof w tym kodzie ?
Wystarczyło podać linijkę zawierającą apostrof.
Apostrofami i cudzysłowami otacza się literały – tymi pierwszymi znakowe, a drugimi łańcuchowe. Literały to stałe wartości bezpośrednio umieszczane w kodzie, takie jak właśnie znaki, ciągi znaków czy liczby.