rdd6584   6년 전

다른 부분은 똑같고 위의 차이만 있는 코드를 각각 실행시켰더니

#define을 이용한 코드는 제대로 작동하지 않습니다. 무슨 차이가 있는건가요?

그리고 제대로 동작시키려면 어떻게 바꿔야할까요?

koosaga   6년 전

? (mat(i-1, j)) : (mat(i, j-1)) + temp

라서 temp가 한쪽만 붙을 겁니다. 


여러 해결 방법이 존재하지만, MAX를 함수로 구현하시고 앞으로 결코 절대 define문을 사용하지 않는 편이 가장 좋습니다. 

rdd6584   6년 전

아 저런식으로 구현이 되는군요 정말 감사합니다.

hihihi   6년 전

만약 쓴다면 괄호를 수상한 곳에 전부 붙여야 합니다

#define MAX(a,b) (((a)>(b))?(a):(b))

rdd6584   6년 전

정말 그래야겠군요. 매크로 사용시 많이 주의해야겠습니다.

많이 배우고 갑니다

댓글을 작성하려면 로그인해야 합니다.