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값이 리턴될 때까지 반복하여 문자열을 자릅니다.
댓글