Memcmp

lmmilewski
int memcmp( const void* ptr1, const void* ptr2, size_t num );

Funkcja memcmp Porównuje num pierwszych bajtów z bloku pamięci wskazywanego przez ptr1 z odpowiednimi bajtami z bloku wskazywanego przez ptr2.

Paramerty:<dl><dt>ptr1</dt><dd>Wskaźnik do pierwszego bloku pamięci.</dd>

<dt>ptr2</dt><dd>Wskaźnik do drugiego bloku pamięci.</dd><dt> num</dt><dd>Ilość porównywanych bajtów</dd></dl> Zwracana wartość: 0 Jeżeli oba fragmenty pamięci są identyczne, zaś w przeciwnym przypadku wartość wskazującą który z nich jest większy (w sensie leksykograficznym).

Przykład:

```cpp #include <stdio.h> #include <string.h>

int main(void) {
// 2 bloki pamięci
char t1[] = "Ala ma kota";
char t2[] = "Ala ma psa";

printf("Pierwszy blok:%s\nDrugi blok:%s\n", t1, t2);
// testujemy odpowiednie kawałki blokow 
if (memcmp(t1, t2, 6) == 0)
    printf("Pierwsze 6 bajtów jest takich samych\n");
if (memcmp(t1, t2, 10) == 0)
    printf("Oba bloki pamieci sa takie same\n");
else if (memcmp(t1, t2, 10) > 0)
    printf("Pierwszy blok jest później słowniku\n");
else
    printf("Drugi blok jest później w słowniku\n");

return 0;

}

0 komentarzy