Функцията memcmp () в C ++ сравнява определен брой символи на два обекта на указателя
прототип на memcmp ()
int memcmp (const void * lhs, const void * rhs, size_t count);
Най memcmp()
функция отнема три аргумента: LHS, RHS и количество. Тази функция първо интерпретира обектите, посочени от lhs и rhs, като масиви от unsigned char
. След това сравнява лексикографски първите знаци за броене на lhs и rhs.
Определя се в заглавния файл "> заглавния файл.
memcmp () Параметри
lhs and rhs
: Указател към обектите в паметта за сравнение.count
: Максимален брой байтове за сравнение.
memcmp () Върната стойност
Функцията memcmp () връща:
- положителна стойност, ако първият различаващ се байт
lhs
е по-голям от съответния байт вrhs
. - отрицателна стойност, ако първият различаващ се байт
lhs
е по-малък от съответния байт вrhs
. - 0, ако първите байтове за броене на
lhs
иrhs
са равни.
Пример: Как работи функцията memcmp ()
#include #include using namespace std; void display(char *lhs, char *rhs, int result, int count) ( if(result> 0) cout << rhs << " precedes " << lhs << endl; else if (result < 0) cout << lhs << " precedes " << rhs << endl; else cout << "First " << count << " characters of " << lhs << " and " << rhs << " are same" << endl; ) int main() ( char lhs() = "Hello World!"; char rhs() = "Hello Earth!"; int result; result = memcmp(lhs, rhs, 5); display(lhs, rhs, result, 5); result = memcmp(lhs, rhs, 7); display(lhs, rhs, result, 7); return 0; )
Когато стартирате програмата, изходът ще бъде:
Първите 5 знака от Hello World! и Здравей Земя! са същите Hello Earth! предшества Hello World!