什么是C语言中的strspn()函数?

C库函数size_t strspn(const char * str1,const char * str2)计算str1初始段的长度,该段最初完全由str2中的字符组成。

字符数组称为字符串。

宣言

以下是数组的声明-

char stringname [size];

例如-char string [50]; 长度为50个字符的字符串

初始化

  • 使用单字符常量-

char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}

  • 使用字符串常量-

char string[10] = “Hello”:;

访问-控制字符串“%s”用于访问字符串,直到遇到“ \ 0”为止。

该Strspn()功能

此函数在给定字符串中搜索指定的字符串,并返回在给定字符串中匹配的char的no-。

宣言

以下是strspn()函数的声明-

size_t strspn(const char *string1, const char *string2)

这里,

  • string1表示此字符串的char是在string2中搜索的。

  • string2指的是另一个字符串,该字符串的字符在string1中搜索。

返回值 strspn()

不返回与给定字符串匹配的任何字符。

示例

以下示例显示了strspn()功能的用法。

#include <stdio.h>
#include <string.h>
int main (){
   int length;
   char string1[20];
   char string2[20];
   printf("enter string1:\n");
   gets(string1);
   printf("enter string2:\n");
   gets(string2);
   /* Searching the string string2 in the string string1.
   * It returns the count of characters of string2 that
   * are matched in the string1
   */
   length = strspn(string1, string2);
   printf("The matched char are: %d\n", length );
   return 0;
}
输出结果

执行以上程序后,将产生以下结果-

enter string1:
Tutorials
enter string2:
nhooo.com
The matched char are: 9