Here is a partial possible explanation.
MS VC++ uses IEEE 754 floating point number representation. That representation scheme includes unique encodings of +INF and -INF. (See
http://www.psc.edu/general/software/.../ieee/ieee.php .) The run-time library and print code in MS VC++ is such that if a computation result is +INF or -INF, and the result is to be displayed by print code, the result is displayed as such: +INF or -INF, or something that represents those.