Develop

[c] 문자열 처리(문자열 자르기)

by hooni posted Apr 23, 2003
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄
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);
}