Are you storing that in an unsigned long? You may want to switch datatypes, perhaps to float/double. That number is the limit of a 64bit unsigned number storage data type, so you have to use something 'bigger' (imprecise types like double, float, etc are your best bet I guess) 0xffffffffffffffff is huge though, what are you doing? lol. But basically, you are reaching architecture and language limitations.

no. i need something that will put the numbers on the screen. not in scientific form. and even in scientific form the number was too big. i'm trying to see how long it would take to print in long form 10^(10^100) or 10^googol or googolplex

Ok if you need to deal with so large number, you have to develop unit system:You should divide every number into groups: units, tens, hundred, thousands etc.You have to create function that maneges the division to units.And then you have to modify all the operators.Good Luck.