Tienes varios fallos:
Código PHP:
palabra+=caracter;
Eso no está bien porque usas para guardar la cadena una variable char y no un array. No lo he probado pero pon por ejemplo:
Código PHP:
char palabra[50];
Ademas tampoco se puede concatenar asi un array de caracteres ya que lo que haces es incrementar el valor de palabra[0]. Usa strcat para concatenar cada caracter o usa un indice que irias incrementando para ir copiando cada caracter uno tras otro. Por ejemplo:
Código PHP:
char palabra[50];
int indice = 0;
while(!feof(fichero)){
caracter = fgetc();
palabra[indice] = caracter;
indice++;
if(caracter == ';')
break;
}
palabra[indice] = '\0';
Ojo, no está probado pero la idea es esa.