diff --git a/src/string/strchr.cpp b/src/string/strchr.cpp
index 6288b64..ab663ea 100644
--- a/src/string/strchr.cpp
+++ b/src/string/strchr.cpp
@@ -14,12 +14,10 @@
 
 // TODO: Look at performance benefits of comparing words.
 LLVM_LIBC_FUNCTION(char *, strchr, (const char *src, int c)) {
-  unsigned char *str =
-      const_cast<unsigned char *>(reinterpret_cast<const unsigned char *>(src));
-  const unsigned char ch = c;
-  for (; *str && *str != ch; ++str)
+  const char ch = c;
+  for (; *src && *src != ch; ++src)
     ;
-  return *str == ch ? reinterpret_cast<char *>(str) : nullptr;
+  return *src == ch ? const_cast<char *>(src) : nullptr;
 }
 
 } // namespace __llvm_libc
diff --git a/src/string/strrchr.cpp b/src/string/strrchr.cpp
index 33a638b..b5852ad 100644
--- a/src/string/strrchr.cpp
+++ b/src/string/strrchr.cpp
@@ -15,10 +15,10 @@
 LLVM_LIBC_FUNCTION(char *, strrchr, (const char *src, int c)) {
   const char ch = c;
   char *last_occurrence = nullptr;
-  do {
+  for (; *src; ++src) {
     if (*src == ch)
       last_occurrence = const_cast<char *>(src);
-  } while (*src++);
+  }
   return last_occurrence;
 }
 
