この関数の目的
memcmp()は、メモリの内容を比較する。
定義
#include <string.h> int memcmp(const void *s1, const void *s2, size_t n);
働き
この関数は、 s1 が指すオブジェクトの最初の n 文字を s2 が指すオブジェクトの最初の n 文字と比較する。*
返り値は、 s1 が指すオブジェクトが s2 が指すオブジェクトより大きいか、等しいか、 小さいかによって、負、ゼロ、正の整数値である。
(*) 構造体オブジェクトのアラインメントに使われるパディングとしての「穴」の内容は不定である。 確保された空間より短い文字列や共用体も比較の問題のもとになる。
解説
オブジェクトの大小を決める方法は定義されていないが、等しいオブジェクトを比較すればゼロが返るということは決まっている。
返り値を使って、検索に便利な二進木を構築することができる。