Hola, porque el Fenix no puede realizar una simple comparacion para ver si una cadena de texto es igual a otra o no?
Yo pongo..
IF (CADENA1 == CADENA2)
//bla bla...
END
Cadena1 = "Hola", Cadena2 = "Hola"
Pero parece que no entiende que las cadenas son exactamente iguales entonces no me ejecuta las otras sentencias que surgirian si da que las cadenas son iguales.
Puedes usar strcmp que devolverá 0 si las cadenas son iguales.
No se en fenix, en bennugd funciona perfecto.
import "mod_say";
import "mod_string";
private
string a = "hola";
string b = "hola";
string c ;
begin
if ( "hello" == "hello" ) say ( "1" ); end
if ( a == b ) say ( "2" ); end
c = "ho" + "la";
if ( c == b ) say ( "3" ); end
end
strcmp no existe en este lenguaje, strcasecmp si existe.
Me pasé de listo ;D
Escribe por pantalla los valores de CADENA1 y CADENA2 justo antes del IF (o usando SAY y la consola de comandos), y después el valor de la comparación, a ver si de verdad CADENA1 y CADENA2 valen "Hola" y "Hola" y que Bennu las detecta como distintas.
Ojo a las mayúsculas y los espacios que no se ven.
Nunca asumas que los valores que llegan al IF que falla son los que tu esperas.