Well if we take 999999999 * 999999999 = 999999998000000001 (18-digits) so the 9 x 9 appears to be withing the type limit.
Ah, I think I see why I went with eight. I used _Integer64, which tops out at 8 x 8. While 9 x 9 works with the unsigned type. Now if folks read this and say, but the unsigned type can handle 20 digits, don't forget that the max number is: 18,446,744,073,709,551,615 so no, 10 x 10 as in 9999999999 * 9999999999 is not going to be less than that 18... max.
Pete
Ah, I think I see why I went with eight. I used _Integer64, which tops out at 8 x 8. While 9 x 9 works with the unsigned type. Now if folks read this and say, but the unsigned type can handle 20 digits, don't forget that the max number is: 18,446,744,073,709,551,615 so no, 10 x 10 as in 9999999999 * 9999999999 is not going to be less than that 18... max.
Pete