| 125 | } |
| 126 | |
| 127 | size_t strcspn(const char *str, const char *spn) |
| 128 | { |
| 129 | size_t ret = 0; |
| 130 | |
| 131 | while (*str != 0) { |
| 132 | const char *p; |
| 133 | for (p = spn; *p != '\0'; p++) |
| 134 | if (*p == *str) |
| 135 | return ret; |
| 136 | ret++; |
| 137 | str++; |
| 138 | } |
| 139 | return ret; |
| 140 | } |
| 141 | |
| 142 | char *strstr(const char *haystack, const char *needle) |
| 143 | { |
no outgoing calls