strcmp
Материал из Pro-Pawn Wiki
Описание:
Сравнивает две строки.
Параметры:
(const string1[], const string2[], bool:ignorecase=false, length=cellmax) |
const string1[], const string2[] | Строки для сравнения. |
bool:ignorecase | Указывает, следует ли функции игнорировать регистр символов (true /false ; необязательный параметр).
|
length | Максимальное количество символов для сравнения (необязательный параметр). |
Возвращаемое значение:
0
, если строки равны;1
, если на i
-той позиции символы различаются и string1[i] > string2[i]
;-1
, если на i
-той позиции символы различаются и string1[i] < string2[i]
.
Если одна из строк пустая, функция возвращает 0 .
Если одна из строк входит в другую, функция возвращает разницу между длинами строк (например, strcmp("abc", "abc123") вернёт -3 ).
|
Пример использования:
main()
{
new result;
result = strcmp("1234", "1234");
printf("result: %d", result); // "result: 0"
result = strcmp("1234", "5678");
printf("result: %d", result); // "result: -1" ('1' < '5')
result = strcmp("efgh", "abcd");
printf("result: %d", result); // "result: 1" ('e' > 'a')
result = strcmp("abcd", "");
printf("result: %d", result); // "result: 0" (см. описание бага выше)
result = strcmp("abcdefgh", "abcde");
printf("result: %d", result); // "result: 3" (см. описание бага выше)
}
{
new result;
result = strcmp("1234", "1234");
printf("result: %d", result); // "result: 0"
result = strcmp("1234", "5678");
printf("result: %d", result); // "result: -1" ('1' < '5')
result = strcmp("efgh", "abcd");
printf("result: %d", result); // "result: 1" ('e' > 'a')
result = strcmp("abcd", "");
printf("result: %d", result); // "result: 0" (см. описание бага выше)
result = strcmp("abcdefgh", "abcde");
printf("result: %d", result); // "result: 3" (см. описание бага выше)
}
См. также: