I do not think there are 128 bit numbers (by default) in C++ 11, but it is not something I know for sure.
However, the 'L' in C/C++ literals indicates a 64 bit number.
I Visual Prolog you can use the types unsigned64 and integer64 and you do not need to use any special marks to write such numbers:
unsigned64 have the range [0..18446744073709551615].
value : unsigned64 = 7362398263876.
p : (unsigned64 X) -> unsigned64 Y.
p(X) = 7362398263876 + value + X.
integer64 have the range [-9223372036854775808..9223372036854775807].
128 bit numbers cannot hold a 80 digit number, the largest number in an 128 bit unsigned is 2^128 ~ 3,4e38 (i.e. 39 digits).
A real can hold very large numbers, but (only) with ~15 digits precision.