assign new value to char

I am using a lcd display and using a char Eng1[5] = "abcd"; to display words but assigning new characters to the string it does not work, for example

#include <LiquidCrystal.h>
LiquidCrystal lcd(53, 51, 49, 47, 45, 43);

char Eng1[5] = "abcd";

void setup()
{
lcd.begin(16, 2);
}

void loop() {

lcd.clear();
Eng1 = "efgh"; // here is the problem
lcd.setCursor(1, 0);
lcd.write(Eng1);
}

we get the message invalid conversion from 'const char*' to 'char'.
Not sure what is wrong.
Regards
Corin

Eng1 = "efgh";     // here is the problem

yep

strcpy(Eng1, F("efgh"));

The solution proposed by BulldogLowell will work ONLY if you are VERY careful.

You should use strncpy(), instead, so you can easily prevent writing more data into the array than it can hold.

   char smallArray[5];
   strcpy(smallArray, "Lots of characters here; most won't fit; you'll crap on memory you don't own");

will compile and link, and cause you untold grief. strncpy() will prevent the grief.

PaulS, your version works, thanks very much. I have not come accoss strcpy before or any tutorials on assigning values. Fantastic...