파일 입출력에서 문장을 삽입하려구 합니다.
카이
질문 제목 : 파입입출력 문장삽입문장이 왜 겹쳐 나올까요?
제가 원하는 문장 스타일
원본이
1
3
4
5
일경우 2번째 자리에 2를 삽입할 경우
1
2
3
4
5
가 되어야 하는데...
1
32
4
5
로 출력이 됩니다...좀 알려주시면 감사하겠습니다.질문 내용 :
2중연결리스트로 구성됩니다.ㅠㅠ
이건 제 소스입니다.
void addnumber_sententce(char (*filename),char (*sentence),int number){
int linenum=1;//라인 갯수(초기값 1)
line* front=head;//추가할 앞값
line* prev=null;//추가하기 전 값
line* add=null;
char* text;
file* file;//파일 읽기
file=fopen(filename,w);//쓰기//잘못열었다면
if(file==null){
printf(file open error\n);
return;
}
//잘열었다면 반복
while(linenum=number){
if(linenum==number){
add=(line*)malloc(sizeof(line));
add-text=sentence;
if(prev==null){//첫줄이라면..
//값 연결
head=add;
add-prev=head;
add-next=front;
front-prev=add;
break;
}
else{
prev-next=add;
add-prev=prev;
add-next=front;
front-prev=add;
break;
}
}
prev=front;
front=front-next;
linenum++;
}
add=null;
front=head;
linenum=0;
//문장을 저장
while(front!=null){
text=front-text;
&n
fputs(text,file);
front=front-next;
}
fclose(file);
}