In that link: Why can't we use double pointer to represent two dimensional arrays?
I saw that arrays are represented like this:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
| | | | | | | | | | | | | ..............| | | (10*6 elements of type int)
- - - - - - - - - - - - - - - - - - - - - -
< first row >< second row> ...
Buy then I tried to do the next thing:
char words[6][21];
int i = 0;
for (i = 0; i < 6; i++)
{
printf("Please enter word number %d: \n", i + 1);
fgets(words[i], 21, stdin);
words[i][strcspn(words[i], "\n")] = 0;
putchar('\n');
}
printf("%d", (*(words + 0)));
As wrote in the link, if the input is:
123
654
555
444
888
666
Then the output should be '1'. But instead, the output is the memory adress. sombody can explain me the missundersood?