C로 프로그래밍 하다보면 문자열 때문에 문제가 많아지죠^^
문자열 제어.. 특히 문자열 토큰에 관해서는 힘든 부분이 많죠^^
아래 문자열 토큰에 관한 함수 하나 소개합니다.
void word_tok(char *dest, char *str, char key);
- dest 잘라진 문자열이 복사될 포인터
- str 원본 문자열
- key 기준이 되믄 문자 하나
str에서 key를 만나기 전까지의 문자열을 dest에 복사하고
str문자열에서 key전까지의 문자열은 제거 됩니다(공백도 제거)
아직 에러 검출에 관한 내용이 없어서 리턴 값은 없구여..
추가하면 다시 여기에 올리겠습니다^^
함수 예제)
void word_tok(char *dest, char *str, char key){ char *word; int len=0, i; while(str[len]!=key && str[len]!='' && str[len]!='n') len++; word = (char *) malloc( sizeof(char)*(len +1) ); for(i=0; i<len; i++) word[i] = str[i]; word[i] = ''; strcpy(dest, word); free(word); while(str[len]==' ') len++; strcpy(str, str+len); }