c언어 fopen, fseek 관련해 질문 드립니다.

leesunghee47의 이미지

안녕하세요. 프로그램중에 막히는 부분이 있어서 질 문 드립니다.

int ii = 0;
FILE *fp=NULL;
fp = fopen( "/mnt/sd/test.txt", "w+b");

for ( ii = 0; ii <= 10; ii++)
fputc( 1, fp );

fseek( fp, -5, SEEK_CUR);
fputc( 2, fp );

fclose(fp);

간단한 소스입니다.

파일을 fopen 후
바이어리로
01 01 01 01 01 01 01 01 01 01
를 fputc 합니다
이후 fseek( fp, -5, SEEK_CUR);
으로 -5 만큼 이동 후
fputc( 2, fp ); 를 해 주면
01 01 01 01 01 02 01 01 01 01 가 아니라
01 01 01 01 01 01 02 01 01 01 01 가 되는데요.

01 01 01 01 01 02 01 01 01 01 이렇게 값을 "삽입"이 아닌 "수정" 할수 있는 방법이 있을까요?

shint의 이미지


for ( ii = 0; ii <= 10; ii++)
for ( ii = 0; ii < 10; ii++)

값이 밀리지는 않습니다.

----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.

매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.

각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com

leesunghee47의 이미지

ㅜㅡ... 아.. "=" 요거를.... 못봤네요..

오늘 아침에 다시 하니 되더라고요... ㅡㅡ.....

아.. 역쉬.. 맑은 정신으로.. 해야 하는듯 하네요 ㅎㅎㅎㅎㅎ;;;

감사합니다!!!