#include <stdio.h>
#include <string.h>
void* memchr(const void* s, int c, size_t n) {
// find first occurrence of c in s from s[0] to s[n]
const unsigned char ch = c;
const unsigned char* p = (const unsigned char*)s;
for (; 0 < n; p++, n--)
if (*p == ch)
return (void*)p;
return NULL;
}
int main()
{
char str[32] = "c programming";
puts(memchr(str, 'm', strlen(str)));
return 0;
}
/*
run:
mming
*/