I simply want a type that can hold something big enough to print the following value when the 'n' constant is equal to at least 100. Is this possible? If not, how can I get this value?

Thankful for help..Code:#include <iostream> const int n = 66; int main(void) { unsigned long long sum; for (int i=1;i<n;i++) sum*=(n-i); // this value is way too big if I use any 'n' value higher than 66 // I can get as far as n=66 with an unsigned long long // it prints: 9 223 372 036 854 775 808 std::cout << sum; return 0; }