> 백엔드 개발 > C++ > C 언어의 strtok() 함수란 무엇입니까?

C 언어의 strtok() 함수란 무엇입니까?

王林
풀어 주다: 2023-08-28 23:29:06
앞으로
1579명이 탐색했습니다.

C 언어의 strtok() 함수란 무엇입니까?

strtok() 함수는 헤더 파일 #include 의 일부입니다.

strtok() 함수의 구문은 다음과 같습니다. 구분자 문자 제한자. strtok()은 구분 문자를 기준으로 문자열을 토큰으로 분할합니다.

strtok()에서 문자열 목록을 얻을 것으로 예상할 수 있습니다. 그러나 함수는 strtok(input,limiter)를 호출한 후 첫 번째 토큰을 반환하므로 별도의 문자열을 반환합니다.

하지만 NULL을 얻을 때까지 빈 입력 문자열에 대해 함수를 계속해서 호출해야 합니다!

일반적으로 NULL을 반환할 때까지 strtok(NULL, delim)을 계속 호출합니다.

예제

다음은 C 프로그램의

strtok() 함수

의 예입니다. 온라인 데모

char* strtok(char* string, const char* limiter);
로그인 후 복사

Output

위 프로그램을 실행하면 다음과 같은 결과가 생성됩니다. −

#include <stdio.h>
#include <string.h>
int main() {
   char input_string[] = "Hello Tutorials Point!";
   char token_list[20][20];
   char* token = strtok(input_string, " ");
   int num_tokens = 0; // Index to token list. We will append to the list
   while (token != NULL) {
      strcpy(token_list[num_tokens], token); // Copy to token list
      num_tokens++;
      token = strtok(NULL, " "); // Get the next token. Notice that input=NULL now!
   }
   // Print the list of tokens
   printf("Token List:</p><p>");
   for (int i=0; i < num_tokens; i++) {
      printf("%s</p><p>", token_list[i]);
   }
   return 0;
}
로그인 후 복사

The 입력 문자열은 "Hello Tutorials Point"이므로 단어를 공백으로 분할하려고 합니다.

strtok(input, " ")을 사용하여 첫 번째 토큰을 얻습니다. 여기서 큰따옴표는 단일 문자열인 구분 기호입니다.

이후에는 strtok(NULL, " ")을 사용하여 태그를 계속 가져오고 strtok()에서 NULL을 얻을 때까지 반복합니다.

위 내용은 C 언어의 strtok() 함수란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿