Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Type Modifiers for Variables | Numerical Data Types
C++ Data Types

book
Type Modifiers for Variables

The keywords short and long are type modifiers. They are used to modify the size or range of a data type. They don't create new data types but rather alter the properties of existing types.

type_modifiers.h

type_modifiers.h

copy
// `short` is used for variables
// That require smaller range of values.
short int small_range_integer_variable;

// `long` is used for variables
// That require a larger range of values.
long int large_range_integer_variable;
1234567
// `short` is used for variables // That require smaller range of values. short int small_range_integer_variable; // `long` is used for variables // That require a larger range of values. long int large_range_integer_variable;

Sometimes, you know that the values will certainly be small. For example, when storing the age of users, the value won't exceed 255. Such values can fit within 8 bits.

main.cpp

main.cpp

copy
#include <iostream>

int main()
{
short int small_number = 45;
long int large_number = 4000000000;

std::cout << "Small number: " << small_number <<std:: endl;
std::cout << "Large number: " << large_number << std::endl;
}
12345678910
#include <iostream> int main() { short int small_number = 45; long int large_number = 4000000000; std::cout << "Small number: " << small_number <<std:: endl; std::cout << "Large number: " << large_number << std::endl; }

What those type modifiers do is change the size of a type. While int takes up 4 bytes, short int takes up 2 bytes, and the long int 8 bytes of memory.

Note

There is a shorter syntax available you can use any of them:

  • short is equivalent to short int;

  • long is equivalent to long int;

So, we need to use long (long int) to store large values. In contrast, we can use short (short int) to take up less memory. However, its range is narrower because of that. Here is the table with ranges that a type can hold:

Tehtävä

Swipe to start coding

  1. Change the type of the variables so it can hold a larger number.
  2. Output the result of the expression.

Ratkaisu

solution.cpp

solution.cpp

#include <iostream>

int main()
{
long int first = 1502365230;
long int second = 1262530350;
std::cout << (first + second) / 2 << std::endl;
}

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 3
single

single

#include <iostream>

int main()
{
int first = 1502365230;
int second = 1262530350;
std::cout << (first + second) / 2 << std::endl;
}

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

We use cookies to make your experience better!
some-alt