Сравнение памяти в C++
Сравнение памяти побайтно сопоставляет
два фрагмента одинаковой длины как числа
unsigned char.
Функция memcmp из <cstring>
возвращает 0 при полном совпадении
в пределах лимита. Сравним два массива по
трем байтам и выведем результат:
#include <cstring>
#include <iostream>
char a[] = "abc";
char b[] = "abc";
int same = std::memcmp(a, b, 3);
std::cout << same << "\n";
При различии на любой позиции число отличается от нуля. Сравним массивы, где третий байт разный:
#include <cstring>
#include <iostream>
char left[] = "abX";
char right[] = "abY";
int diff = std::memcmp(left, right, 3);
std::cout << diff << "\n";
Сравните "aa" и "aa" как
два массива по 2 байтам функцией
std::memcmp. Выведите 1,
если результат 0, иначе 0.