Subversion Repositories Kolibri OS

Rev

Rev 8793 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 8793 Rev 9765
Line 1... Line -...
1
/* strspn( const char *, const char * )
-
 
2
 
-
 
3
   This file is part of the Public Domain C Library (PDCLib).
-
 
4
   Permission is granted to use, modify, and / or redistribute at will.
1
/* Copyright (C) 1994 DJ Delorie, see COPYING.DJ for details */
5
*/
-
 
6
 
-
 
7
#include 
2
#include 
Line 8... Line 3...
8
 
3
 
9
size_t strspn( const char * s1, const char * s2 )
4
size_t strspn(const char* s1, const char* s2)
10
{
-
 
11
    size_t len = 0;
5
{
12
    const char * p;
-
 
13
 
-
 
14
    while ( s1[ len ] )
-
 
15
    {
6
    const char *p = s1, *spanp;
16
        p = s2;
-
 
17
 
-
 
18
        while ( *p )
-
 
19
        {
-
 
20
            if ( s1[len] == *p )
-
 
21
            {
-
 
22
                break;
-
 
23
            }
-
 
24
 
-
 
25
            ++p;
-
 
26
        }
-
 
27
 
-
 
28
        if ( ! *p )
-
 
29
        {
-
 
30
            return len;
-
 
31
        }
-
 
32
 
-
 
33
        ++len;
-
 
Line -... Line 7...
-
 
7
    char c, sc;
-
 
8
 
-
 
9
cont:
-
 
10
    c = *p++;
-
 
11
    for (spanp = s2; (sc = *spanp++) != 0;)
34
    }
12
        if (sc == c)
35
 
13
            goto cont;
36
    return len;
14
    return (p - 1 - s1);