0

文字 0 を含む可能性のある文字列があります。これらは次のような構造に格納されます。

typedef struct somestruct_s {
     const unsigned char *string;
     size_t length;
};

これらのうちの 2 つを一緒に比較したい場合は、memcmp をそのまま使用できます。

int match = (a->length == b->length) ? !memcmp (a->string, b->string, a->length) : 0;

しかし、大文字と小文字を区別せずにこれらの 2 つを比較したい場合、私の最初の本能は strncasecmp/_strnicmp を使用することですが、その関数は null 文字で停止します。

これを行うことができる一般的なC関数はすでにありますか?自分で書いてもかまいませんが、その前に、知らない標準関数がないことを確認したいと思います。

4

0 に答える 0