[39758] 질문 보세요....
:
: 리눅스에서 그런가요?
: 해보니까 난 잘되는데 ...
:
:
:
: #include <stdio.h>
:
: int main()
: {
: char line[1024];
: FILE *fp;
:
: fp = fopen("aa.c","r");
: // fp = stdin;
:
: while (fgets(line,1023,fp))
: {
: line[1023] = 0;
: if ( line[strlen(line)-1] == '' )
: line[strlen(line)-1] = 0;
: printf("line=%s", line);
: //fseek(fp,0,0);
: }
:
: fclose(fp);
: }
:
:
: : stdin 과 "r" 모드로 연 파일 스트림간에 차이가 있나요?
: : 제가 혼자 쓸 작은 프로그램을 만들면서 만든 함수 중에
: : (FILE * )형 인수로 받는 함수 있는데 여기에 stdin 을 넘겨주면
: : 에러가 나고 fopen 의 "r" 모드로 연 파일 스트림을 넘겨주면
: : 잘 동작합니다.
: : 디버깅 해보면 에러 나는 곳도 실행 할때마다 달라집니다.
: : 대부분 fseek(), fgets() 등에서 에러가 납니다.
: : 뭔가 문제인지, 혹은 stdin 과 "r" 모드로 연 스트림과의 차이점을
: : 아시는 분의 답변 바랍니다.
: :
: : stdin 이 바이너리 모드라서 그런가요?
: : 리눅스는 텍스트/바이너리 스트림 구분이 없다고 들었는데....
: :
: : 참고로 스트림을 "rb" 모드로 열었을 때도 마찬가지 였습니다.
: :
: : --
: : lanewz--lanewz