diff options
Diffstat (limited to 'rushs/tinyprintf/my_strspn/my_strspn.c')
| -rw-r--r-- | rushs/tinyprintf/my_strspn/my_strspn.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/rushs/tinyprintf/my_strspn/my_strspn.c b/rushs/tinyprintf/my_strspn/my_strspn.c new file mode 100644 index 0000000..18bba0f --- /dev/null +++ b/rushs/tinyprintf/my_strspn/my_strspn.c @@ -0,0 +1,26 @@ +#include "my_strspn.h" + +int is_in(char c, const char *accept) +{ + for (; *accept && *accept != c; accept++) + { + continue; + } + return *accept != '\0'; +} + +size_t my_strspn(const char *s, const char *accept) +{ + if (s == NULL || *s == '\0') + { + return 0; + } + + size_t res; + for (res = 0; *s && is_in(*s, accept) != 0; res++, s++) + { + continue; + } + + return res; +} |
