Computer >> 컴퓨터 >  >> 프로그래밍 >> C 프로그래밍

C 언어 strspn() 함수 완벽 가이드: 구문과 예제

C 언어 strspn() 함수란?

strspn() 함수는 C 언어의 <string.h> 헤더 파일에 정의된 표준 라이브러리 함수입니다. 이 함수는 첫 번째 문자열의 시작부터 두 번째 문자열에 포함된 문자들로만 연속해서 이루어진 초기 부분 문자열(segment)의 길이를 계산하고, 그 길이를 반환합니다.

쉽게 말해, 첫 번째 문자열을 처음부터 차례대로 검사하면서 두 번째 문자열에 존재하는 문자가 연속으로 나타나는 만큼의 길이를 세는 방식입니다. 두 번째 문자열에 없는 문자를 만나는 즉시 검사가 중단됩니다.

strspn() 함수 구문

다음은 C 언어에서 strspn() 함수의 기본 구문입니다.

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

매개변수 설명:

  • string1: 검사 대상이 되는 원본 문자열입니다.
  • string2: 일치 여부를 판별할 문자들의 집합 역할을 하는 문자열입니다.

반환값: string1의 시작 위치에서 string2에 포함된 문자들이 연속적으로 일치하는 길이(size_t 타입)를 반환합니다.

strspn() 함수 예제

다음은 C 언어에서 strspn() 함수를 활용한 실제 코드 예제입니다.

#include <stdio.h>
#include <string.h>
int main() {
    const char s1[] = "Helloworld!";
    const char s2[] = "Hello";
    int length = strspn(s1, s2);
    printf("The length of string : %d", length);
    return 0;
}

실행 결과

The length of string : 5

코드 분석

위 예제에서 s1은 "Helloworld!", s2는 "Hello"입니다. strspn(s1, s2)는 s1의 시작부터 s2에 포함된 문자('H', 'e', 'l', 'o')가 연속으로 등장하는 길이를 계산합니다. 앞의 5개 문자인 "Hello"는 모두 s2에 속하지만, 그 뒤의 'w'는 s2에 포함되지 않으므로 검사가 해당 지점에서 멈추고 결과값 5를 반환하게 됩니다.