|
처음할당한 str2랑 해제시의 str랑 위치가 다르네요.
권혁준 님이 쓰신 글 :
: void test(char* str){
: int i=0;
: int size=strlen(str)+1;
: char *str2;
:
: str2 = (char *)calloc(size, sizeof(char));
:
: while(*str2++ = *str++);
: *str2 = '\0';
:
: str2-=size;
: str-=size;
: printf("%s %s\n", str2, str);
:
: free(str2);
: }
:
: 안녕하세요. 공부중에 도저히 몰라서 질문드립니다.
: 위 함수를 실행시키면 제일 아래 free 에서 에러가 나는데 왜 그런지 알고싶습니다.
: 문자열조작하는거 공부중인데 많이 어렵네요.
|