int — Maple v0.0.10beta Documentation

### Navigation

- next
- previous |
- LeafLabs |
- Index »
- Complete Language Index »

# `int`

The `int` data type represents integers. Integers are your primary data type for number storage, and store a 4 byte value. This yields a range of -2,147,483,648 to 2,147,483,647 (minimum value of -2^31 and a maximum value of (2^31) - 1; that’s about negative 2 billion to positive 2 billion).

An `int` stores a negative number with a technique called two’s complement math. The highest bit in an `int`, sometimes refered to as the “sign” bit, flags the number as a negative number. (See the linked article on two’s complement for more information).

The Maple takes care of dealing with negative numbers for you, so that arithmetic operations work mostly as you’d expect. There can be an unexpected complication in dealing with the bitshift right operator (>>), however.

The `long` type is a synonym for `int`.

Here is an example of declaring an `int` variable named `ledPin`, then giving it value 13:

    int ledPin = 13;

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

    int var = val;

## Integer Overflow

When `int` variables leave the range specified above, they roll over in the other direction. Here are some examples:

    int x;
    x = -2,147,483,648;
    x--; // x now contains 2,147,483,647; rolled over "left to right"

    x = 2,147,483,647;
    x++; // x now contains -2,147,483,648; rolled over "right to left"

## See Also

- unsigned int
- char
- unsigned char
- long long
- unsigned long long
- Integer Constants
- Variables

License and Attribution

This documentation page was adapted from the Arduino Reference Documentation, which is released under a Creative Commons Attribution-ShareAlike 3.0 License.

### Navigation

- next
- previous |
- LeafLabs |
- Index »
- Complete Language Index »