#include<stdio.h>
#include<string.h>
int main(void)
{
char str[] = "aaf";
char * p;
p = strtok(str, "a");
if(p)
printf("%s", p);
return 0;
}
출력결과가 f가 나오는데
일단 구분자가 a이고 a가 아닌 다른문자가 나올때까지 재끼니까
처음 검색이 시작되는 위치는 f부터.
그리고 f부터 시작해서 구분자가 a인걸 찾아내는데 더이상 없으니까 널을 리턴하는게 아니었음?
strtok을 한번 호출했으니 첫번째 토큰을 리턴하지
검색은 문자열 시작부터 하는거고
첫번째 토큰을 널로 바꾸고 그 위치를 기억한다음에 구분되어지는 문자열의 첫주소를 리턴 하는거 아님? aa bb 에서 구분자를 공백으로 했을때 한번 호출하고 찍으면 aa가 출력
http://lmgtfy.com/?q=strtok
제설명이 뭔가 잘못됐나여? 토큰에 의해서 나뉘는 첫 문자열의 첫주소를 리턴하는거 맞는것같은데.. 검색해봐도 잘 모르겠음ㅜㅜ
delimit은 공기취급하닌까 delimit과 null사이에 str이 있을 때까지 탐색하징.. 그러다 null만나면 p도 null이고