없는걸 참조했다니.. 어째서입니까.. 파일의 끝을 넘어서면 계속 EOF를 반환한다고 생각했는데...
12(59.12)2012-02-26 20:49
m2가 초기화가 안되어 있자나.(정확히 말하자면 m1도 초기화하는게 맞지)
공돌이대장(sands000)2012-02-26 20:50
&& 을 || 으로 수정하였으니 저 두 개의 조건문 중 하나라도 맞으면 while문을 수행하지만, 만약 첫번째 조건문이 맞으면 컴파일러는 두번째 조건문은 수행 안하고 바로 while문 내부로 진입하기 시작해. 근데 m1의 값은 첫번째 조건문을 통해 존재하지만 m2의 값은 두번째 조건문을 수행하지 않았기때문에 아무런 값이 안 들어가 있지. 그래서 에러 발생
공돌이대장(sands000)2012-02-26 20:51
아! 내가 미련하다! 그렇군요 실험해보니까 파일내용이 둘다 똑같아도 서로 다르다고 나오네요 다른방법을 써야할듯
12(59.12)2012-02-26 20:54
으엌 내 추측이 빗나가버렸다 ㅋㅋ 그러고보니까 \"&&\"는 공돌님대장 말씀대로 첫번째 조건이 틀리면 두번째조건은 확인안해본다고 배웠음요, \"&\" 이 연산자를 써보면 어떨까요,,
없는걸 참조한거아닙니까? 배열로 따지면, int a[5]; a[10] = 1;
파일 내용을 따지기 전에 파일 크기부터 비교해야할듯요
fgetc 두개가 리턴한 값 m1,m2를 비교하려고 썼는데 한쪽은 호출이 안되는건가요
네, 바로 그말입니다, 어디까지나 추측이지만,
없는걸 참조했다니.. 어째서입니까.. 파일의 끝을 넘어서면 계속 EOF를 반환한다고 생각했는데...
m2가 초기화가 안되어 있자나.(정확히 말하자면 m1도 초기화하는게 맞지)
&& 을 || 으로 수정하였으니 저 두 개의 조건문 중 하나라도 맞으면 while문을 수행하지만, 만약 첫번째 조건문이 맞으면 컴파일러는 두번째 조건문은 수행 안하고 바로 while문 내부로 진입하기 시작해. 근데 m1의 값은 첫번째 조건문을 통해 존재하지만 m2의 값은 두번째 조건문을 수행하지 않았기때문에 아무런 값이 안 들어가 있지. 그래서 에러 발생
아! 내가 미련하다! 그렇군요 실험해보니까 파일내용이 둘다 똑같아도 서로 다르다고 나오네요 다른방법을 써야할듯
으엌 내 추측이 빗나가버렸다 ㅋㅋ 그러고보니까 \"&&\"는 공돌님대장 말씀대로 첫번째 조건이 틀리면 두번째조건은 확인안해본다고 배웠음요, \"&\" 이 연산자를 써보면 어떨까요,,