strspn() : 문자열에서 특정 문자열로 구성된 문자의 수를 구하는 함수
NAME
strspn, strcspn - search a string for a set of characters
SYNOPSIS
#include <string.h>
size_t strspn(const char *s, const char *accept);
size_t strcspn(const char *s, const char *reject);
#include#include int main () { int i; char compare_text[] = "123th"; char character_set[] = "123456th123th"; i = strspnn (compare_text, character_set); printf ("The length of initial number is [%d].\n", i); return 0; }
결과 값은 5가 나옴.
compare_text에는 비교당할 문자열이 들어간다.
character_set에 있는 문자들 중에서 compare_text에 들어있는
문자와 비교해서 개수를 나타냄
==> 단점은 ... 중복된 문자열에 대해서는 카운트를 하지 않는다.
예상으로는 결과가 10이어야 하는데 실제 컴파일 수행하면 5가 결과로 출력됨.
원시코드 strspn.c
출처 : http://opensource.apple.com/source/Libc/Libc-167/string.subproj/strspn.c
#include "sys/cdefs.h" #include/* * Span the string s2 (skip characters that are in s2). */ size_t strspn(s1, s2) const char *s1; register const char *s2; { register const char *p = s1, *spanp; register char c, sc; /* * * Skip any characters in s2, excluding the terminating \0. * */ cont: c = *p++; for (spanp = s2; (sc = *spanp++) != 0;) if (sc == c) goto cont; return (p - 1 - s1); }
반응형
'Language > C' 카테고리의 다른 글
바이너리 파일전송 C언어 예제 -서버- (158) | 2012.10.18 |
---|---|
itoa 함수 예제 (468) | 2012.10.17 |
strcmp 함수 예제 (3161) | 2012.08.17 |
strchr 함수 예제 (442) | 2012.08.14 |
strdup 함수 예제 (476) | 2012.08.14 |