diff --git a/src/string/strcmp.c b/src/string/strcmp.c index f3ec3cc..5ec8600 100644 --- a/src/string/strcmp.c +++ b/src/string/strcmp.c @@ -6,5 +6,5 @@ int strcmp(const char *s1, const char *s2) s1 += 1; s2 += 1; } - return (*s1 - *s2); + return ((unsigned char) *s1 - (unsigned char) *s2); } diff --git a/src/string/strncmp.c b/src/string/strncmp.c index 0469f47..d03448a 100644 --- a/src/string/strncmp.c +++ b/src/string/strncmp.c @@ -7,5 +7,5 @@ int strncmp(const char *s1, const char *s2, size_t n) size_t i = -1; while (++i < n - 1 && s1[i] != '\0' && s2[i] != '\0' && s1[i] == s2[i]) ; - return (s1[i] - s2[i]); + return ((unsigned char) s1[i] - (unsigned char) s2[i]); }