Oppure

Loading
17/01/08 13:46
bangirasu
Da quanto dice il Kernighan/Ritchie un'espressione come questa dovrebbe funzionare.
  int x, y[10];
  x = 4[y];

Naturalemente mi sono stupito e ho provato a compilare un programmino che non fa niente di speciale:
#include <stdio.h>
int main() {
  int x, y[10];
  x = 4[y];
  printf("%d\n", x);
  return 0;
}

COMPILA E FUNZIONA!
Il mio unico problema è che non capisco assolutamente cosa significa l'assegnazione ad x, qualcuno riesce a spiegarmelo...
aaa
25/01/08 11:04
bangirasu
risolto...

dato che y[4] = *(y+4) = *(4+y) = 4[y]
è giusto perchè l'addizione è commutativa.
aaa
26/01/08 11:33
Zani88
Il C non finisce mai di stupirmi!
aaa
31/01/08 17:08
pierotofy
Interessante, non pensavo fosse possibile farlo.
Il mio blog: piero.dev