Posted by Lithmee

**Key Difference – int vs** long

In programming, it is required to store data. The data is stored in memory. Memory locations that can store data is called variables. Each memory location can store a specific type of data. Memory size for each data type is different. The int data type is used to store numeric values without decimal points. The float and double data types are used to store numerical values with decimal points. The char data type is used to store a single character value. Likewise, each data type can store a particular value depending on the type. In programming languages such as python, it is not necessary to declare the variable type. If the programmer is written as a = 3, Python automatically identifies that it is an integer variable. In programming languages such as Java, the programmer should specify the data type. If the variable is declared as an int, then he cannot assign a character value to it. The int and long are two data types. This article discusses the difference between int and long. The **key difference** between int and long is that **int is 32 bits in width while long is 64 bits in width.**

### CONTENTS

1. Overview and Key Difference

2. What is int

3. What is long

4. Similarities Between int and long

5. Side by Side Comparison – int vs long in Tabular Form

6. Summary

## What is int?

A data type int is a most commonly used data type that holds an integer value in it. It is predefined data type supported by many programming languages such as Java. To declare an integer variable, the keyword ‘int’ is used. Therefore, it cannot be used as an identifier such as a variable name or a method name. Refer the below example program.

**Figure 01: Java program with int values**

According to the above program, the variable a is an int and has the value 10. The variable b is an int and has the value 20. The sum of a and b are calculated and assigned to the variable sum. It is also an integer. In the for loop, ‘i’ is the counter variable. It is an integer. It will iterate 5 times. When the ‘i’ value becomes 6, the condition becomes false and get out of the loop.

Typecasting can be performed on data types. It is the process of converting a one data type to another data type. When assigning a smaller data type to a larger data type, there is no casting required. The widening happens in a byte, short, int, long, float, double. When assigning a larger data type to a small data type, it is necessary to do the casting.

**Figure 02: Casting**

In above program, the num1 variable has value 10. The variable num2 has value 20. The total is an int. As int is a larger data type than a byte, it is necessary to typecast into byte in order to store into a byte variable. If there is no typecasting, it means the integer value is assigned to the byte variable so there will be a compile-time error.

## What is long?

The long is a predefined data type provided by languages such as Java. In Java, the data range is from -9,223,372,036,854,775,808(-2^63) to 9,223,372,036,854,775,807 (inclusive) (2^63-1). It is 64 bits in width. The number of bytes for a long is 8 bytes. One byte is equivalent to 8 bits. Refer the below program.

**Figure 03: Java program with long values**

According to the above program, width and length are long variables. The resulting value is assigned to a long variable. The long is the largest data type. Other data types are smaller than long. So other data types can be assigned to long without typecasting. When assigning a long value to int, it is required to typecast.

## What is the Similarity Between int and long?

- Both int and long are predefined data types supported by programming languages such as Java.

## What is the Difference Between int and long?

## int vs long | |

The int data type is a 32-bit signed two’s complement integer. | The long data type is a 64-bit signed two’s complement integer. |

Number of Bytes | |

The int is 4 bytes long. | The long is 8 bytes long. |

Minimum Value | |

Minimum value of int is – 2,147,483,648 (-2^31) in Java | Minimum value of long is -9,223,372,036,854,775,808(-2^63) in Java |

Maximum Value | |

Maximum value of int is 2,147,483,647 (inclusive) (2^31-1) in Java | Maximum value of long is 9,223,372,036,854,775,807 (inclusive) (2^63-1) in Java |

Default Value | |

The default value of int is 0. | The default value of long is 0L. |

Keyword | |

The keyword ‘int’ is used to declare an integer. | The keyword ‘long’ is used to declare a long. |

Required Memory | |

The int requires less memory than long. | The long requires more memory than int. |

## Summary –**int vs**long

In programming, it is necessary to store data. Those data are stored in memory locations. Those memory locations are called variables. Each variable has a specific type of data to be stored. There are data types such as int, char, double and float etc. This article discussed the difference between two data types that are int and long. The int data type is a 32-bit signed two’s complement integer. The long data type is a 64-bit signed two’s complement integer. The long is a larger data type than int. The difference between int and long is that int is 32 bits in width while long is 64 bits in width.

##### Reference:

1.Point, Tutorials. “Java Basic Datatypes.” Tutorials Point, 8 Jan. 2018.Available here

2.“Type conversion in Java with Examples.” *GeeksforGeeks*, 5 Jan. 2017.Available here

## FAQs

### Difference Between int and long | Compare the Difference Between Similar Terms? ›

The fundamental difference between an int and long data type is **the width of each type**. The datatype int has the width of 32-bit for the variable of int type. On the other hand, the data type long has the width of 64-bit for the variable of long type.

**What is the difference between integers and long integers? ›**

Integer — For integers that range from -32,768 to +32,767. Storage requirement is two bytes. Long Integer — For integers that range from -2,147,483,648 to +2,147,483,647. Storage requirement is four bytes.

**What is the difference between long and int and short? ›**

The minimum size for char is 8 bits, the minimum size for short and int is 16 bits, **for long it is 32 bits** and long long must contain at least 64 bits. The type int should be the integer type that the target processor is most efficiently working with. This allows great flexibility: for example, all types can be 64-bit.

**What is the difference between long long int and long long? ›**

But before starting the blog post, I want to make you clear that **long and long int are identical and also long long and long long int**. In both cases, the int is optional. There are several shorthands for built-in types. Let's see some examples of signed built-in types.

**Why use int instead of long? ›**

Integer is a signed 32 bit integer type. **If your usage of a variable falls in the 32 bit range**, use `Int`, else use `long`. Usually long is used for scientific computations and stuff like that need much accuracy.

**What is integer vs long value? ›**

Datatype for large integers. While integers can be as large as 2,147,483,647 and as low as -2,147,483,648 (stored as 32 bits), **a long integer has a minimum value of -9,223,372,036,854,775,808 and a maximum value of 9,223,372,036,854,775,807 (stored as 64 bits)**.

**What is the difference between long and double and int? ›**

1. Definition. According to Oracle docs, **the long data type is a 64-bit two's complement integer whereas the double data type is a double-precision 64-bit IEEE 754 floating point**.

**What is int vs long vs decimal? ›**

Int64 (aka long): A signed integer with 64 bits (8 bytes) of space available. Single (aka float): A 32-bit floating point number. Double (aka double): A 64-bit floating-point number. Decimal (aka decimal): A 128-bit floating-point number with a higher precision and a smaller range than Single or Double.

**How do you define long int? ›**

A long integer is **a data type in computer science whose range is greater (sometimes even double) than that of the standard data type integer**.

**What is longer than an int? ›**

If you need to hold an integer larger than the Integer data type can hold, you can use the **Long data type** instead. Long variables can hold numbers from -9,223,372,036,854,775,808 through 9,223,372,036,854,775,807. Operations with Long are slightly slower than with Integer .

### Is long long an integer? ›

In this article

Long (**long integer**) variables are stored as signed 32-bit (4-byte) numbers ranging in value from -2,147,483,648 to 2,147,483,647.

**What is the difference between long long int and unsigned int? ›**

Well, the difference between unsigned long and long is simple -- **the upper bound**. Signed long goes from (on an average 32-bit system) about -2.1 billion (-2^31) to +2.1 billion (+2^31 - 1), while unsigned long goes from 0 to 4.2 billion (2^32 - 1).

**What is the example of long int? ›**

If we need to store a large integer (in the range -2147483647 to 2147483647), we can use the type specifier long . For example, // **large integer long b = 123456;** Note: long is equivalent to long int .

**Can you convert a long to an int? ›**

To convert a Long object to an Integer object in Java, you can **use the intValue() method of the Long class**, which returns the value of the Long as an int .

**When to use long and int in C? ›**

Longer integers: long

**The long data type stores integers like int , but gives a wider range of values at the cost of taking more memory**. Long stores at least 32 bits, giving it a range of -2,147,483,648 to 2,147,483,647. Alternatively, use unsigned long for a range of 0 to 4,294,967,295.

**Why is long and int same in C++? ›**

"a long in C/C++ is the same length as an int." Not always. **The C++ standard specifies that an int be the "natural" size for the processor, which may not always be as big as a long** . The standard also guarantees that a long is at least as long as an int , so the fact that they are equal sizes are not always guaranteed.

**What is the difference between long and int in Excel? ›**

Long is a data type in VBA used to store the numeric values. We know that integer also holds numeric values, but **Long differs from integers as the data storage range is very big**. In the case of the Long data type, we can hold decimal values too. So, it is a built-in data type.

**Is long a double or integer? ›**

long: The long data type is **a 64-bit two's complement integer**.

**How many digits can a long integer have? ›**

The INTEGER data type stores whole numbers that range from -2,147,483,647 to 2,147,483,647 for **9 or 10 digits** of precision. The number 2,147,483,648 is a reserved value and cannot be used.

**Should I use int or double? ›**

What's the Difference Between "int" and "double"? **An int is an integer, which you might remember from math is a whole number.** **A double is a number with a decimal**. The number 1 is an integer while the number 1.0 is a double.

### Should I use double instead of int? ›

A very basic explanation is that a double can be a number with a decimal point. So with regards to the code you posted, because total is of type double it can be incremented by 0.5 after every loop total += 0.5 . **If total was of type int this would not be possible**.

**Do long integers have decimals? ›**

Key idea: Like whole numbers, **integers don't include fractions or decimals**.

**What is the difference between double and long double? ›**

In C and related programming languages, **long double refers to a floating-point data type that is often more precise than double precision** though the language standard only requires it to be at least as precise as double . As with C's other floating-point types, it may not necessarily map to an IEEE format.

**Why do we use long? ›**

In different systems, the allocated memory space differs. On Linux environment the long takes 64-bit (8-bytes) of space, and the long long takes 128-bits (16-bytes) of space. This is used **when we want to deal with some large value of integers**. We can test the size of different types using this simple program.

**What is an example of a long data type? ›**

Long data types are whole numbers, both positive and negative, that have many place values. Examples include: **-398,741,129,664,271**.

**What is a long decimal? ›**

LONG **stores numbers as numeric values, including decimal, fractional, and whole numbers**. DOUBLE stores double-precision floating point number values. STRING stores alphanumeric characters as text. DATETIME stores year, month, day, hour, minute, and second values.

**What is the limit of int and long? ›**

The C++ standard only guarantees that the minimum size for long long int will be 64-bits. This is also by far the most common size. With a 64-bit size, the maximum number that can be represented will be **2^63 - 1 , which equals 9223372036854775807** .

**How many bytes is a long? ›**

**What is the data type of long long? ›**

LongLong (**LongLong integer) variables are stored as signed 64-bit (8-byte) numbers ranging in value from -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807**. The type-declaration character for LongLong is the caret (^). LongLong is a valid declared type only on 64-bit platforms.

**What are examples for int? ›**

Examples of integers are: **-5, 1, 5, 8, 97, and 3,043**. Examples of numbers that are not integers are: -1.43, 1 3/4, 3.14, .09, and 5,643.1. The set of integers, denoted Z, is formally defined as follows: Z = {..., -3, -2, -1, 0, 1, 2, 3, ...}

### What is the best way to convert int to long? ›

The int data type is a smaller data type than long, so it can be converted using a simple assignment operation (implicit type casting) of an int variable to a long variable. It can be converted using **explicit type casting, (long)(int_var_name)**.

**How do you convert long long int to string? ›**

**Related information**

- stdlib.h.
- itoa() — Convert int into a string.
- ltoa() — Convert long into a string.
- ulltoa() — Convert unsigned long long into a string.
- ultoa() — Convert unsigned long into a string.
- utoa() — Convert unsigned int into a string.

**How do you convert a long string to an integer? ›**

**Java String to Int – How to Convert a String to an Integer**

- Use Integer.parseInt() to Convert a String to an Integer. This method returns the string as a primitive type int. ...
- Use Integer.valueOf() to Convert a String to an Integer. This method returns the string as an integer object.

**What is a long integer? ›**

Long (long integer) variables are stored as **signed 32-bit (4-byte) numbers ranging in value from -2,147,483,648 to 2,147,483,647**. The type-declaration character for Long is the ampersand (&).

**What is integer vs long integer in Python? ›**

Integers in Python 3 are of unlimited size. Python 2 has two integer types - int and long. **There is no 'long integer' in Python 3 anymore**. float (floating point real values) − Also called floats, they represent real numbers and are written with a decimal point dividing the integer and the fractional parts.

**What are two types of integers? ›**

Types of Integers

**Positive Integers (Natural numbers)** Negative Integers (Additive inverse of Natural Numbers)

**How many integers are in long? ›**

Longer integers: long

The long data type stores integers like int , but gives a wider range of values at the cost of taking more memory. Long stores at least 32 bits, giving it a range of **-2,147,483,648 to 2,147,483,647**.

**Is long bigger than integer? ›**

If you need to hold an integer larger than the Integer data type can hold, you can use the Long data type instead. Long variables can hold numbers from -9,223,372,036,854,775,808 through 9,223,372,036,854,775,807. **Operations with Long are slightly slower than with Integer** .

**What are examples of an integer? ›**

An integer (pronounced IN-tuh-jer) is a whole number (not a fractional number) that can be positive, negative, or zero. Examples of integers are: **-5, 1, 5, 8, 97, and 3,043**. Examples of numbers that are not integers are: -1.43, 1 3/4, 3.14, .09, and 5,643.1.

**What is long () in Python? ›**

Long: **Integer type with unlimited length**. In python 2.2 and later, Ints are automatically turned into long ints when they overflow. Dropped since Python 3.0, use int type instead. Float: This is a binary floating point number.

### What are the 4 types of integer data type in Python? ›

**Python Numeric Data Type**

- int (signed integers)
- long (long integers, they can also be represented in octal and hexadecimal)
- float (floating point real values)
- complex (complex numbers)

**What are 4 examples of integers? ›**

An integer is a number with no decimal or fractional part and it includes negative and positive numbers, including zero. A few examples of integers are: -5, 0, 1, 5, 8, 97, and 3,043. A set of integers, which is represented as Z, includes: Positive Numbers: A number is positive if it is greater than zero.

**What are the 4 rules of integers? ›**

RULE 1: The product of a positive integer and a negative integer is negative. RULE 2: The product of two positive integers is positive. RULE 3: The product of two negative integers is positive. RULE 1: The quotient of a positive integer and a negative integer is negative.

**What is long data type? ›**

long: The long data type is **a 64-bit two's complement integer**. The signed long has a minimum value of -2^{63} and a maximum value of 2^{63}-1. In Java SE 8 and later, you can use the long data type to represent an unsigned 64-bit long, which has a minimum value of 0 and a maximum value of 2^{64}-1.

**What is int in Python? ›**

The int in python is **a built-in method that converts a string or a number into an integer**. We can also use int in python to convert binary numbers to decimal numbers, hexadecimal numbers to decimal numbers, and octal numbers into decimal numbers.

**Is every integer a whole number? ›**

The set of natural numbers and '0' are whole numbers. The set of natural numbers and their negatives and '0' together form integers. So, **every whole number is an integer.**