The '=' operator works differently when used in an initialization statement, than in a stand-alone assignment statement. This feature was included by the designers of C/C++ to confuse us!

You can't assign an entire array with = :
char bob[9];     // This line is OK
bob = "hello";   // But, this won't work!
You can initialize an array with = :
char bob[9] = "hello";   // This will work
char bob[] = "hello";   // This will work too