unsigned long long

An unsigned version of the long long data type. An unsigned long long occupies 8 bytes of memory; it stores an integer from 0 to 2^64-1, which is approximately 1.8×10^19 (18 quintillion, or 18 billion billion).

A synonym for the unsigned long long type is uint64.

Like an unsigned int, an unsigned long long won’t store negative numbers; it is also subject to the same overflow issues as any integral data type.

Here is an example of declaring an unsigned long long variable named c, then giving it value 299,792,458,000,000,000 (see integer constants for an explanation of the “ULL” at the end of the number):

// Speed of light in nanometers per second (approximate).
unsigned long long c = 299792458000000000ULL;

The general syntax for declaring an unsigned long long variable named var, then giving it value val, looks like:

unsigned long long var = val;

See Also

License and Attribution

Portions of this page were adapted from the Arduino Reference Documentation, which is released under a Creative Commons Attribution-ShareAlike 3.0 License.