StringCompare

Сравнивает между собой две строки и возвращает результат сравнения в виде целого числа.

int  StringCompare(
   const string&  string1,                 // первая сравниваемая строка
   const string&  string2,                 // вторая сравниваемая строка
   bool           case_sensitive=true      // режим учета регистра букв при сравнении
   );

Параметры

string1

[in]  Первая строка.

string2

[in]  Вторая строка.

case_sensitive=true

[in]  Режим учета регистра букв. Если значения равно true, то "A">"a". Если значение равно false, то "A"="a". По умолчанию значение параметра равно true.

Возвращаемое значение

  • -1 (минус один), если string1<string2
  • 0 (ноль), если string1=string2
  • 1 (один), если string1>string2

Примечание

Строки сравниваются посимвольно, символы сравниваются в алфавитном порядке в соответствии с текущей кодовой страницей.

Пример:

void OnStart()
  {
//--- что больше, яблоко или дом?
   string s1="Apple";
   string s2="home";
 
//--- сравним с учетом регистра  
   int result1=StringCompare(s1,s2);
   if(result1>0) PrintFormat("Сравнение с учетом регистра: %s > %s",s1,s2);
   else
     {
      if(result1<0)PrintFormat("Сравнение с учетом регистра: %s < %s",s1,s2);
      else PrintFormat("Сравнение с учетом регистра: %s = %s",s1,s2);
     }
 
//--- сравним без учета регистра
   int result2=StringCompare(s1,s2,false);
   if(result2>0) PrintFormat("Сравнение без учета регистра: %s > %s",s1,s2);
   else
     {
      if(result2<0)PrintFormat("Сравнение без учета регистра: %s < %s",s1,s2);
      else PrintFormat("Сравнение без учета регистра: %s = %s",s1,s2);
     }
/* Результат:
     Сравнение с учетом регистра: Apple < home
     Сравнение без учета регистра: Apple < home
*/
  }

Смотри также

Тип string, CharToString(), ShortToString(), StringToCharArray(), StringToShortArray(), StringGetCharacter(), Использование кодовой страницы