I have the following code:
char *s1, *s2; char str[10]; printf(\"Type a string: \"); scanf(\"%s\", str); s1 = &str[0]; s2 = &str[2]; printf(\"%s\\
scanf("%s",str) scans only until it finds a whitespace character. With the input "A 1", it will scan only the first character, hence s2 points at the garbage that happened to be in str, since that array wasn't initialised.
scanf("%s",str)
"A 1"
s2
str