일반 c에서는 binary와 ascii로 입출력하는 것에 차이가 있었는데, r나 rb , w나 wb 의 차이가 없는 것 같아요....왜그런가요?
wb로 쓰고 r로 읽나, w로 쓰고 rb로 읽나 차이도 없고, 화일도 똑같더라구요.........
GNU 매뉴얼 보시면 아시겠지만.
도스c에서는 구별했는지 몰라도...
gnu c 에서는 w,wb 나 구별안하고.. 똑같이 읽습니다.
아마 binary 로 읽겠죠?...
약간 부연 설명을 드리면, 라인 끝 (line end) 를 어떻게 읽어들이느냐에 따라 이진-텍스트모드가 결정됩니다.
유닉스에서는 line feed(lf) ('\n') 만을 개행 문자로 쓰기 때문에, 이진 및 텍스트 모드가 차이가 없습니다. 매킨토시도 cr ('\r') 만을 개행문자로 사용하므로, 이진,텍스트 차이가 없습니다.
도스는 carriage return(cr)/line feed(lf) 를 조합하기 때문에, 텍스트 모드에서 쓰기를 하면 '\n' 을 쓸 때 '\r\n' 이 써지고, 읽어들일때도 마찬가지 현상을 보입니다. 그래서 이진, 텍스트 모드가 서로 다르지요.
매킨토시는 '\n' 을 '\r' 로 변환해서 쓰기를 하므로, 차이가 있습니다. C 함수는 유닉스 기준으로 되어 있습니다. 라면 분다고 재촉하는 바람에 제대로 못썼나봅니다. 죄송... ㅠㅠ
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
Re: [질문] 화일 입출력시..
GNU 매뉴얼 보시면 아시겠지만.
도스c에서는 구별했는지 몰라도...
gnu c 에서는 w,wb 나 구별안하고.. 똑같이 읽습니다.
아마 binary 로 읽겠죠?...
Re: [질문] 화일 입출력시..
약간 부연 설명을 드리면,
라인 끝 (line end) 를 어떻게 읽어들이느냐에 따라 이진-텍스트모드가
결정됩니다.
유닉스에서는 line feed(lf) ('\n') 만을 개행 문자로 쓰기 때문에, 이진 및
텍스트 모드가 차이가 없습니다. 매킨토시도 cr ('\r') 만을 개행문자로
사용하므로, 이진,텍스트 차이가 없습니다.
도스는 carriage return(cr)/line feed(lf) 를 조합하기 때문에, 텍스트
모드에서 쓰기를 하면 '\n' 을 쓸 때 '\r\n' 이 써지고, 읽어들일때도
마찬가지 현상을 보입니다. 그래서 이진, 텍스트 모드가 서로 다르지요.
앗 틀렸습니다.... ㅡㅡ;
매킨토시는 '\n' 을 '\r' 로 변환해서 쓰기를 하므로,
차이가 있습니다. C 함수는 유닉스 기준으로 되어 있습니다.
라면 분다고 재촉하는 바람에 제대로 못썼나봅니다.
죄송... ㅠㅠ
댓글 달기