[PATCH 1/3] add strnncmp() function
- From
Jeremiah Mahler <jmmahler@gmail.com>
- Date
- Jun 16, 2014, 19:13 UTC
- Message-ID
- <58e0ac866bdeb8cc6e06cf553a459af351ccfd1b.1402945507.git.jmmahler@gmail.com>
- In-Reply-To
- <cover.1402945507.git.jmmahler@gmail.com>
Add a strnncmp() function which behaves like strncmp() except it uses the length of both strings instead of just one.
Signed-off-by: Jeremiah Mahler <jmmahler@gmail.com> --- strbuf.c | 6 ++++++ strbuf.h | 2 ++ 2 files changed, 8 insertions(+)
diff --git a/strbuf.c b/strbuf.c index ac62982..bd486c3 100644 --- a/strbuf.c +++ b/strbuf.c @@ -600,3 +600,9 @@ char *xstrdup_tolower(const char *string) result[i] = '\0'; return result; } + +int strnncmp(const char *a, int len_a, const char *b, int len_b) +{ + int min_len = (len_a < len_b) ? len_a : len_b; + return (memcmp(a, b, min_len) || (len_a - len_b)); +} diff --git a/strbuf.h b/strbuf.h index e9ad03e..88af9bf 100644 --- a/strbuf.h +++ b/strbuf.h @@ -187,4 +187,6 @@ extern int fprintf_ln(FILE *fp, const char *fmt, ...); char *xstrdup_tolower(const char *); +extern int strnncmp(const char *a, int len_a, const char *b, int len_b); + #endif /* STRBUF_H */
-- 2.0.0