strtok 질문입니다..

goatee98의 이미지

strtok 함수의 프로토타입을 보면 char *strtok(char *s, const char *delim); 으로 되었는데
char buff[] = "AA:BB:CC"; 을 char *delim = ":"; 로 파싱할려고 했는데
A=strtok(buff, delim); 와 B=strtok(buff, ":");의 결과가 다릅니다.
A=AA:BB:CC
B=AA
B=BB
B=CC
즉, A는 파싱이 되지 않습니다.
뭐가 잘 못 된건가요??

리눅스 9, 인텔 CPU, GCC 3.2.2 입니다.

fromdj의 이미지

이상한일이군요

a=strtok(buff,delim);
while(a) {
printf(a);
a=strtok(NULL,delim);
}

이것도 안되나요 ?

^^ be cool ~
http://fromdj.pe.kr

서지훈의 이미지

전체 소스를 올려 주세요.

<어떠한 역경에도 굴하지 않는 '하양 지훈'>

#include <com.h> <C2H5OH.h> <woman.h>
do { if (com) hacking(); if (money) drinking(); if (women) loving(); } while (1);

goatee98의 이미지

답글 달아 주신 모든 분들께 죄송합니다. -_-;;
delim 으로 ":" 한다는게 ";"를 해 버렸네요.. :oops:

fromdj의 이미지

ㅋㅋㅋ

^^ be cool ~
http://fromdj.pe.kr