회신: 심사문제 38.8 관련
, 도장_ 관리자님이 작성문제에서 요구하는 것처럼
5 5
*....
.*.**
.*...
.....
.....
결과 출력도 문제에 있는 예제처럼 해야 합니다. 문자열 비교로 심사하므로 공백이라도 차이가 있으면 오답이 됩니다.
컴파일 오류가 있으면 안 됩니다. 이는 잘못 코딩한 것입니다.
38.8.c(23): warning C4047: '=': 'char *'의 간접 참조 수준이 'int'과(와) 다릅니다.
38.8.c(19): warning C4047: '초기화 중': 'char **'의 간접 참조 수준이 'int'과(와) 다릅니다.
온라인 심사에 사용되는 GCC에서는 더 많은 경고가 표시됩니다.
38.8.q.c:5:6: warning: return type of ‘main’ is not ‘int’ [-Wmain]
38.8.q.c: In function ‘main’:
38.8.q.c:7:2: warning: implicit declaration of function ‘srand’ [-Wimplicit-function-declaration]
38.8.q.c:18:2: warning: implicit declaration of function ‘malloc’ [-Wimplicit-function-declaration]
38.8.q.c:18:13: warning: incompatible implicit declaration of built-in function ‘malloc’ [enabled by default]
38.8.q.c:29:4: warning: implicit declaration of function ‘rand’ [-Wimplicit-function-declaration]
38.8.q.c:67:3: warning: implicit declaration of function ‘free’ [-Wimplicit-function-declaration]
38.8.q.c:67:3: warning: incompatible implicit declaration of built-in function ‘free’ [enabled by default]
38.8.q.c:70:2: warning: incompatible implicit declaration of built-in function ‘free’ [enabled by default]
void main은 더는 쓰이지 않습니다. int main으로 써야 합니다.
실행 도중 오류가 발생하는 것은 메모리 접근 위반 때문입니다. Unit 6을 참고하여 디버거로 한 단계씩 실행하기(F11)를 사용해보세요.