I want to understand what this code is supposed to do, 'cause Code::Blocks doesn't show me enough to understand on my own. The code in C language is down bellow:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
struct S {
char *S;
};
int main(void) {
struct S *S = (struct S *) malloc(sizeof(struct S));
S -> S = "123\0""45678";
printf("%d", strlen(S -> S + 5) + S -> S[3]);
free(S);
return 0;
}