From 6bc908e3e7cfb13d4277aaa35846f72fd9df337c Mon Sep 17 00:00:00 2001 From: Ian Moffett Date: Sun, 21 Dec 2025 23:10:02 -0500 Subject: usr: sdk: Add strcmp() to sdk/string.h + sources Signed-off-by: Ian Moffett --- usr/sdk/common/string/strcmp.c | 19 +++++++++++++++++++ usr/sdk/inc/sdk/string.h | 11 +++++++++++ 2 files changed, 30 insertions(+) create mode 100644 usr/sdk/common/string/strcmp.c diff --git a/usr/sdk/common/string/strcmp.c b/usr/sdk/common/string/strcmp.c new file mode 100644 index 0000000..cb47cfb --- /dev/null +++ b/usr/sdk/common/string/strcmp.c @@ -0,0 +1,19 @@ +/* + * Copyright (c) 2025, Ian Moffett. + * Provided under the BSD-3 clause. + */ + +#include +#include + +int +strcmp(const char *s1, const char *s2) +{ + while (*s1 == *s2++) { + if (*s1++ == 0) { + return (0); + } + } + + return (*(UBYTE *)s1 - *(UBYTE *)--s2); +} diff --git a/usr/sdk/inc/sdk/string.h b/usr/sdk/inc/sdk/string.h index 965f66a..9e648d9 100644 --- a/usr/sdk/inc/sdk/string.h +++ b/usr/sdk/inc/sdk/string.h @@ -28,6 +28,17 @@ USIZE strlen(const char *str); */ void *memcpy(void *dest, const void *src, USIZE count); +/* + * Compare two strings to see if they are equal. + * + * @s1: First string + * @s2: Second string + * + * Returns the differences between the two string, zero if + * equal. + */ +int strcmp(const char *s1, const char *s2); + /* * Convert a given value into a string based on a * specific radix/base -- cgit v1.2.3