表头文件
1
|
#include <string.h> |
定义函数:
1
|
size_t strspn ( const char *s, const char * accept); |
函数说明 strspn()从参数s 字符串的开头计算连续的字符,而这些字符都完全是accept 所指字符串中的字符。简单的说,若strspn()返回的数值为n,则代表字符串s 开头连续有n 个字符都是属于字符串accept内的字符。
返回值 返回字符串s开头连续包含字符串accept内的字符数目。
#include <string.h> #include <stdio.h> main() { char *str= "Linux was first developed for 386/486-based pcs." ; printf ( "%d\n" , strspn (str, "Linux" )); printf ( "%d\n" , strspn (str, "/-" )); printf ( "%d\n" , strspn (str, "1234567890" )); } |
运行结果:
5
0
0
int
strspn
(
const
char
*s,
const
char
*accept)
{
const
char
*p;
const
char
*a;
int
count = 0;
for
(p = s; *p !=
'\0'
; ++p)
{
for
(a = accept; *a !=
'\0'
; ++a)
{
if
(*p == *a)
{
break
;
}
}
//里面的for循环到此为止
if
(*a ==
'\0'
)
{
return
count;
}
++count;
}
//外面的for循环到此为止
return
count;
}