I am a teaching assistant of a introductory programming course, and some students made this type of error:
char name[20]; scanf(\"%s\",&name);
Actually, they are different, they don't have the same type at least.
But in C, the address of the array is the same as the address of the first element in the array that's why "they are not different", basically, they point to the same thing.