Wann ist eine CHOMSKY-Grammatik mehrdeutig?

Hätte noch eine andere Frage:

Gegeben ist folgendes Programmfragment:
int i,k=1, *z, *x, f[2]={1,2}; z= &f[0]; x=&k;
Kreuzen Sie in nachstehender Tabelle nur alle fehlerhaften Anweisungen an!
Geben Sie für diese Fehler eine Kurzbegründung an!

  1. f[2]= 0;
  2. z=f;
  3. f=z;
  4. k=2**z;
  5. i=(*x)++;
  6. z=*i;

Kennt sich da jemand aus?

CHOMSKY-Grammatik?
Hi,
also ich seh’ jetzt den Chomsky-Zusammenhang nicht auf den ersten Blick…

Aber

Gegeben ist folgendes Programmfragment:
int i, k=1, *z, *x, f[2]={1,2};
z= &f[0];
x=&k;

das ist C-Code.
Und das auch:

  1. f[2]= 0;
  2. z=f;
  3. f=z;
  4. k=2**z;
  5. i=(*x)++;
  6. z=*i;

Da ich jetzt schon länger nicht mehr mit C gearbeitet habe, bin ich mir bei Pointern und Referenzen (*,&amp:wink: zu unsicher, um eine sichere Aussage treffen zu wollen.
Am einfachsten wäre es, das einfach mal zu kompilieren. Dann sollten einige Fehler gemeldet werden.
Und bei der Ausführung dann weitere. (Einige sind offensichtlich.) Vielleicht soll das ja „Chomsky“ ausmachen? (Compiler- vs Laufzeitfehler)

Gruß,
www2011