[완료]sscanf 함수를 이용해서 tab 구분자로만 문자열을 나눌수 있나요?

k3rnel의 이미지

안녕하세요

제가 알고 있기로는 sscanf() 함수 자체에서 공백이나 tab(\t) 구분자를 이용해서 문자열을 나눠서 저장한다고 알고 있습니다
예를 들면 아래와 같은 코드에서는

char item1[BUFSIZ], item2[BUFSIZ], item3[BUFSIZ], item4[BUFSIZ], item5[BUFSIZ];
char tmp [] = "aaaa bbbb\tcccc dddd\teeee";
 
sscanf(tmp, "%s %s %s %s %s", item1, item2, item3, item4, item5);

sscanf() 함수내에서 공백과 탭을 구분자로 사용하기 때문에 정확히 5개의 문자열 "aaaa","bbbb","cccc","dddd","eeee"로 분리 할 수 있습니다.
그런데 제가 하고 싶은 것은 위의 tmp 변수에 있는 문자열들을 tab 구분자로 분리하여 "aaaa bbbb", "cccc dddd", "eeee" 로 나타내고 싶습니다.

방법이 있을까요? 조언 부탁드리겠습니다(_ _)

nthroot의 이미지

"%[^\t]\t%[^\t]\t%[^\t]\t"

------식은이 처------
길이 끝나는 저기엔 아무 것도 없어요. 희망이고 나발이고 아무 것도 없어.

k3rnel의 이미지

잘 동작합니다~
감사합니다~(_ _)^^