I try to write a factorial function to compute a large number(factorial(105)),its result have 168 digit, so use long double, but it seems to be a error, can't it use like this?

## Inaccurate C++ factorial program

I wrote an implementation of the following tutorial: LINK Basically, since C/C++ does not have BIG Integer we are storing the factorial decimal values in an array. This is equivalent to writing a multiplication that performs the multiplication kids are taught at schools.

## why using int64_t gives wrong result while double works as expected for simple integer multiplications

here is my code :this printswhich is wrong answer but if i change integer type to double that will print 1.37847e+11 which is the correct answer,my question is why using int64_t gives me incorrect answer