Tablice i ich indeksy

0

Witam, tworze sobie projekt(początki programowania) gry w warcaby, gdzie plansza do gry opiera sie na tablicy dwuwymiarowej, czy wiecie jak zapobiec temu, aby gdy np indeks 8 jest indeksem maksymalnym, to żeby nie przechodziło po np. dodaniu 1 do początku tablicy? mam na myśli to:

int tab[8][8]{};

to tab[8+1][8] jest rownowazne z tym tab[0][8], da sie temu zapobiec? np jakis warunek itp.

1

Wykraczanie poza zakres tablicy jest UB (https://en.cppreference.com/w/cpp/language/ub#Access_out_of_bounds), więc w ogóle nie powinieneś do takiej sytuacji dopuścić.

np jakis warunek itp.

Np. if (index < 8)? ;-p

1

https://en.wikipedia.org/wiki/Segmentation_fault
Chcesz coś zrobić z nieistniejącym miejscem w tablicy

1

Użyj modulo (reszta z dzielenia):
tab[8][(8 + 1) % 9] <=> tab[8][0]
jeśli indeks maksymalny wynosi 8, to długość tablicy wynosi 9 (stąd modulo 9).

1 użytkowników online, w tym zalogowanych: 0, gości: 1