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].

Bug.png
Баг Pawn
Если одна из строк пустая, функция возвращает 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" (см. описание бага выше)
}


См. также: