StringCompare

Esta función compara dos cadenas de caracteres y devuelve el resultado de la comparación en forma de un número entero.

int  StringCompare(
   const string&  string1,                 // la primera cadena a comparar
   const string&  string2,                 // la segunda cadena a comparar
   bool           case_sensitive=true      // modo de sensibilidad a mayúsculas
   );

Parámetros

string1

[in]  La primera cadena.

string2

[in]  La segunda cadena.

case_sensitive=true

[in]  Selección del modo de sensibilidad a mayúsculas. Si es true, entonces "A">"a". Si es false, entonces "A"="a". Por defecto, el valor de este parámetro es igual a true.

Valor devuelto

  • -1 (menos uno), si string1<string2
  • 0 (cero), si string1=string2
  • 1 (uno), si string1>string2

Nota

Las cadenas se comparan carácter por carácter. Los caracteres se comparan en orden alfabético de acuerdo con la página de código actual.

Ejemplo:

void OnStart()
  {
//--- ¿Qué es más grande, una manzana o una casa?
   string s1="Apple";
   string s2="home";
 
//--- modo de sensibilidad a mayúsculas activado  
   int result1=StringCompare(s1,s2);
   if(result1>0) PrintFormat("Comparación sensible a mayúsculas: %s > %s",s1,s2);
   else
     {
      if(result1<0)PrintFormat("Comparación sensible a mayúsculas: %s < %s",s1,s2);
      else PrintFormat("Comparación sensible a mayúsculas: %s = %s",s1,s2);
     }
 
//--- modo de sensibilidad a mayúsculas desactivado
   int result2=StringCompare(s1,s2,false);
   if(result2>0) PrintFormat("Comparación no sensible a mayúsculas: %s > %s",s1,s2);
   else
     {
      if(result2<0)PrintFormat("Comparación no sensible a mayúsculas: %s < %s",s1,s2);
      else PrintFormat("Comparación no sensible a mayúsculas: %s = %s",s1,s2);
     }
/* Resultado:
     Comparación sensible a mayúsculas: Apple < home
     Comparación no sensible a mayúsculas: Apple < home
*/
  }

Véase también

Tipo string, CharToString(), ShortToString(), StringToCharArray(), StringToShortArray(), StringGetCharacter(), Uso de página de código