Stavo solo leggendo del codice e ho scoperto che la persona stava usando arr[-2]per accedere al 2 ° elemento prima del arr, in questo modo:
|a|b|c|d|e|f|g|
^------------ arr[0]
^---------- arr[1]
^---------------- arr[-2]
È permesso?
So che arr[x]è lo stesso di *(arr + x). Così arr[-2]è *(arr - 2), il che sembra OK. Cosa ne pensi?
somearray-2è indefinito a meno che il risultato non sia compreso tra l'inizio disomearraye 1 oltre la sua fine.