Hey Leute
hier kommt erst mal der Quellcode...
#include<stdio.h>
char *c[] = { "ENTER", "NEW", "POINT", "FIRST"};
char **cp[] = { c+3, c+2, c+1, c};
char ***cpp = cp;
main()
{
printf("%s", **++cpp);
printf("%s", *--*++cpp+3);
printf("%s", *cpp[-2]+3);
printf("%s", cpp[-1][-1]+1);
return 0;
}
Jetz soll herausgefunden werden, was das Programm macht.
Was es tut ist mir klar und die Ausgabe erscheint mir auch logisch.
Mein Problem ist, dass ich nicht verstehe warum z.B. in der zweiten printf Anweisung die ersten drei Stellen ignoriert werden. Warum wird die +3 am Ende nicht gleich zu cpp noch dazugezählt? Wäre meiner Meinung nach logischer.
Vielleicht könnt Ihr mir ja helfen.
Danke im Vorraus
P.S. Nein das Programm hat keinen großartigen Sinn
Venator234 Gast |