c strncasecmp可以处理NULL(字符0)

时间:2016-04-09 10:11:16

标签: c strcmp memcmp

我有可能包含字符0的字符串。它们存储在这样的结构中:

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

如果我希望将其中两个进行比较,我可以使用memcmp:

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

但是如果我想在不考虑大小写的情况下将其中的两个进行比较,我的第一直觉是使用strncasecmp / _strnicmp - 但是,该函数在空字符上停止。

是否存在可以执行此操作的常见C函数。我不介意自己写,但在此之前,我想确保没有我不知道的标准功能。

0 个答案:

没有答案