Пространства имён
Варианты
Действия

std::strcmp

Материал из cppreference.com
< cpp‎ | string‎ | byte

Определено в заголовочном файле <cstring>
int strcmp( const char *lhs, const char *rhs );
Сравнивает две строки с нулевым символом байт. Сравнение происходит лексикографически.
Оригинал:
Compares two null-terminated byte strings. The comparison is done lexicographically.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Оба lhs и rhs должен указывать на допустимые строки.
Оригинал:
Both lhs and rhs should point to valid strings.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

Содержание

[править] Параметры

lhs, rhs -
указателей на строки с нулевым символом байт для сравнения
Оригинал:
pointers to the null-terminated byte strings to compare
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

[править] Возвращаемое значение

Отрицательное значение, если lhs является меньше rhs.
Оригинал:
Negative value if lhs is less than rhs.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
0 если lhs является равно rhs.
Оригинал:
0 if lhs is equal to rhs.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Положительное значение, если lhs является больше rhs.
Оригинал:
Positive value if lhs is greater than rhs.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

[править] Пример

#include <vector>
#include <cstring>
#include <algorithm>
#include <iostream>
 
int main()
{
    std::vector<const char*> cats {"Heathcliff", "Snagglepuss", "Hobbes", "Garfield"};
    std::sort(cats.begin(), cats.end(), [](const char *strA, const char *strB) {
        return std::strcmp(strA, strB) < 0;
    });
 
    for (const char *cat : cats) {
        std::cout << cat << '\n';
    }
}

Вывод:

Garfield
Heathcliff
Hobbes
Snagglepuss

[править] См. также

сравнивает определенное количество символов двух строк
Оригинал:
compares a certain amount of characters of two strings
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция) [edit]
сравнивает два буфера
Оригинал:
compares two buffers
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция) [edit]
сравнивает две строки в соответствии с текущей локали
Оригинал:
compares two strings in accordance to the current locale
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция) [edit]
C documentation for strcmp