81.7 아스키 심사문제 관련
, Ahn Yeheon님이 작성아스키 아트 심사문제에서 막혀서 질문드립니다
일단 코드를 올려놓겠습니다.
문제되는 부분은 나중에 지워주시면 감사하겠습니다.
문의한 코드는 삭제합니다.
나름대로 파일크기 제한도 설정해봤고 해상도도 제한시켜봤습니다.
VS2017에서 파일에도 잘 저장되고 stdout으로도 잘 출력됩니다
그런데도 계속 통과가 안되길래 어디서 막혔는지 찾아보았으나
도저히 놓친게 뭔지 보이지 않아 질문드립니다..
(도장_ 관리자에 의해 편집됨 - 원문 제출일 2017년 9월 5일, 화요일, 오후 3:20 )
회신: 81.7 아스키 심사문제 관련
, Ahn Yeheon님이 작성음 ..뭔가 빼먹은줄 알고 다시 복사해서 실행시켜봤는데
제 컴퓨터에서는 출력이 사진과 같이 됩니다.
실행 환경마다 결과의 차이가 있을 수 있는건가요..? 정말 어렵습니다 ㅠ
회신: 81.7 아스키 심사문제 관련
, 도장_ 관리자님이 작성문의에 올린 코드로는 출력이 없었습니다.
파일명이 sample.bmp가 맞는지요?
https://github.com/gilbutITbook/006759/blob/master/Unit%2081/sample50x50.bmp
이 파일을 sample.bmp로 변경해서 코드를 실행했을 때 결과가 나와야 합니다.
(raw 버튼을 클릭하면 파일을 받을 수 있습니다.)
테스트 환경은 두 곳이었습니다.
1번: 윈도 10 64비트, Visual Studio 2017
2번: 우분투 리눅스 64비트, gcc
둘 다 출력이 없었습니다.
코드를 보면
fpTxt = fopen("ascii.txt", "w");
if (fpTxt == NULL)
{
fclose(fpTxt);
return 0;
}
심사에서 쓰기는 금지되어 있습니다. 이와 관련된 부분은 모두 제거되어야 합니다.
stdout(표준 출력)에 출력만 해야 합니다.
해상도 부분도 제대로 동작하지 않습니다. 삭제합니다.
//가로, 세로 해상도 200x200에 대한 코드입니다. 괄호를 안 씌워놨다가 혹시 문제가 되는건 아닌가 싶어서 묶어놓았습니다.
if ((infoHeader.biXPelsPerMeter > 200) || (infoHeader.biYPelsPerMeter > 200))
{
fclose(fpBmp);
return 0;
}