저도 이 문제점을 찾아 해결하는데 애를 많이 먹었네요... 완전 똑같은 방법으로 풀어서...
<limit.h>에 정의되어있는 constants값이 WithCS 환경에서는 우리의 생각과 다르게 정의되서 그렇습니다.
따라서 이 문제를 풀려면 limit.h를 쓰면 안되고 power함수를 직접 정의해서 사용해야 맞출 수 있습니다.
왜 limit.h에 정의된 constants값에 문제가 생길수 있는지는
http://www.cplusplus.com/reference/climits/
에 설명이 되어있습니다.
(the actual value depends on the particular system and library implementation, but shall reflect the limits of these types in the target platform.)