模擬實現strchr.strrchr
阿新 • • 發佈:2019-01-03
模擬實現strchr
strchr函式返回要查詢字元子字串中第一次出現的地址
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
char *my_strchr(const char *string, int c)
{
assert(string);
while (*string != '\0')
{
if (*string == c)
return string;
string++;
}
return NULL;
}
int main()
{
char a[] = "abcabc";
char ch = 'a';
printf("%s\n", my_strchr(a, ch));
system("pause");
return 0;
}
模擬實現strrchr
strrchr函式返回要查詢字元子字串中最後一次出現的地址,所以可以從後向前考慮,找字元第一次出現在字串的地址。
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
char *my_strchr(const char *string, int c)
{
assert(string);
while (*string != '\0')
{
string++;
}
while (*(--string))
{
if (*string == c)
return string;
}
}
int main()
{
char a[] = "abcabc";
char ch = 'a';
printf("%s\n", my_strchr(a, ch));
system("pause" );
return 0;
}