Hola Jose Luis:Estas intentando comparar un char (estr[0]) con un AnsiString (ed_letra->Text), si lo que quieres es comparar el primer caracter de 'estr' y 'ed_letra->Text' tendrías que hacerlo así:
if (estr[0] == ed_letra->Text[1])
{
//.....MAS CODIGO......
}
(AnsiString comienza a contar desde 1 y no desde 0 como char*)
También podías haberlo comparado directamente sin el char* en medio:
if (consulta->FieldByName("CAMPO")->AsString[1] == ed_letra->Text[1])
{
//.....MAS CODIGO......
}
para evitar que salte un error en caso de que la cadena este vacia podrías usar el método IsEmpty() de AnsiString, que devuelve true en caso de que este vacia.
Saludos.
_Leo