libc

my libc
git clone git://git.evenfri.duckdns.org/libc.git
Log | Files | Refs | README

commit 9ed5a8907d9f6315a532b49df8c21d073ca1ed62
parent b066c30b69f5c9c56003b50e830933ecacd047ff
Author: evenfri <evenfri256@gmail.com>
Date:   Mon, 10 Aug 2026 02:51:24 +0800

fix: strtok and strchr

Diffstat:
Mstrchr.c | 14+++++++-------
Mstrtok.c | 6+++---
Msyscall.c | 2+-
3 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/strchr.c b/strchr.c @@ -7,15 +7,15 @@ char *strchr(const char *s, int c) { char chr = (char)c; - int i = 0; - while (s[i] != 0) { - if (s[i] == chr) - return (char*)s + i; - if (s[i] == '\0') - return NULL; - i++; + while (*s != '\0') { + if (*s == chr) + return (char *)s; + s++; } + if (chr == '\0') + return (char *)s; + return NULL; } diff --git a/strtok.c b/strtok.c @@ -12,12 +12,12 @@ char* strtok(char *str, const char *delim) { next_token = str; } - if ( next_token == NULL || * next_token == '\0') { + if (next_token == NULL) { return NULL; } char *token_start = next_token; - while (*token_start && strchr(delim, *token_start)) { + while (*token_start != '\0' && strchr(delim, *token_start) != NULL) { token_start++; } @@ -27,7 +27,7 @@ char* strtok(char *str, const char *delim) { } char *token_end = token_start; - while (*token_end && !strchr(delim, *token_end)) { + while (*token_end != '\0' && strchr(delim, *token_end) == NULL) { token_end++; } diff --git a/syscall.c b/syscall.c @@ -1,5 +1,5 @@ /* - * syscall.c - syscalls wrapper + * syscall.c - syscalls wrapper * Copyright (C) 2026. All rights reserved. */