URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Go to most recent revision |
Only display areas with differences |
Details |
Blame |
View Log
Rev 1010 |
Rev 1765 |
/*
|
/*
|
FUNCTION
|
FUNCTION
|
<<strcspn>>---count chars not in string
|
<<strcspn>>---count chars not in string
|
|
|
INDEX
|
INDEX
|
strcspn
|
strcspn
|
|
|
ANSI_SYNOPSIS
|
ANSI_SYNOPSIS
|
size_t strcspn(const char *<[s1]>, const char *<[s2]>);
|
size_t strcspn(const char *<[s1]>, const char *<[s2]>);
|
|
|
TRAD_SYNOPSIS
|
TRAD_SYNOPSIS
|
size_t strcspn(<[s1]>, <[s2]>)
|
size_t strcspn(<[s1]>, <[s2]>)
|
char *<[s1]>;
|
char *<[s1]>;
|
char *<[s2]>;
|
char *<[s2]>;
|
|
|
DESCRIPTION
|
DESCRIPTION
|
This function computes the length of the initial part of
|
This function computes the length of the initial part of
|
the string pointed to by <[s1]> which consists entirely of
|
the string pointed to by <[s1]> which consists entirely of
|
characters <[NOT]> from the string pointed to by <[s2]>
|
characters <[NOT]> from the string pointed to by <[s2]>
|
(excluding the terminating null character).
|
(excluding the terminating null character).
|
|
|
RETURNS
|
RETURNS
|
<<strcspn>> returns the length of the substring found.
|
<<strcspn>> returns the length of the substring found.
|
|
|
PORTABILITY
|
PORTABILITY
|
<<strcspn>> is ANSI C.
|
<<strcspn>> is ANSI C.
|
|
|
<<strcspn>> requires no supporting OS subroutines.
|
<<strcspn>> requires no supporting OS subroutines.
|
*/
|
*/
|
|
|
#include <string.h>
|
#include <string.h>
|
|
|
size_t
|
size_t
|
_DEFUN (strcspn, (s1, s2),
|
_DEFUN (strcspn, (s1, s2),
|
_CONST char *s1 _AND
|
_CONST char *s1 _AND
|
_CONST char *s2)
|
_CONST char *s2)
|
{
|
{
|
_CONST char *s = s1;
|
_CONST char *s = s1;
|
_CONST char *c;
|
_CONST char *c;
|
|
|
while (*s1)
|
while (*s1)
|
{
|
{
|
for (c = s2; *c; c++)
|
for (c = s2; *c; c++)
|
{
|
{
|
if (*s1 == *c)
|
if (*s1 == *c)
|
break;
|
break;
|
}
|
}
|
if (*c)
|
if (*c)
|
break;
|
break;
|
s1++;
|
s1++;
|
}
|
}
|
|
|
return s1 - s;
|
return s1 - s;
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.