C 언어 문자열 자르기 strtok() 사용법

C에서는 문자열을 잘라낼 때 사용하는 함수로 strtok라는 함수가 있습니다. 

strtok 함수는 string token의 약자로 인자 값으로 전달받은 매개변수를 구분자로 하여 문자열을 잘라내어 return 합니다.

만약 더 이상 자를 문자열이 없다면 NULL을 반환합니다.

 

strtok 사용법

char *strtok(char *str, const char *delimiters);

str : 자르고자 하는 문자열
delimiters : 자를 기준을 정하는 구분자

 

strtok 샘플

#include <stdio.h>
#include <string.h>

int main() {
    char str[] = "MY NAME IS TOM"; 
    char *temp = strtok(str," "); 
    
    while (temp != NULL) { 
        printf("%s\n",temp); 
        temp = strtok(NULL, " ");
    }
	
    return 0;
}

 

결과

MY
NAME
IS
TOM

 

결과는 공백을 기준으로 문자열을 잘라 표시하고 있습니다.

strtok 함수는 더 이상 자를 수가 없으면 NULL값을 리턴하기 때문에 NULL값이 리턴될 때까지 반복하여 문자열을 자릅니다.

댓글