Уровень: полный новичок

Сегодня мы обсудим целочисленные переменные. Если у вас нет настройки среды, вы можете попробовать все следующие коды в LeetCode PlayGround (рассмотрено в первый день).

Что покрывается

  1. Объявление и использование int
  2. Различные типы целых чисел: short, int, long, long long
  3. Литье основного типа

Что такое целочисленные переменные?

Целочисленная переменная содержит целое число (положительное, отрицательное или ноль), которое не имеет дробной части. В C++ существуют различные типы целочисленных переменных, которые различаются по размеру и диапазону.

Объявление и инициализация целочисленных переменных

Чтобы объявить целочисленную переменную в C++, вы используете ключевое слово int, за которым следует имя переменной. Так:

int myInt;

Вы также можете инициализировать целочисленную переменную при ее объявлении, например:

int myInt = 42;

Значение целочисленной переменной можно изменить позже в программе, присвоив ей новое значение:

myInt = 10;

Целочисленные типы и диапазоны

В C++ существует несколько целочисленных типов, различающихся по размеру и диапазону. Вот некоторые из наиболее распространенных целочисленных типов:

  • short: 2 байта, диапазон от -32 768 до 32 767
  • int: 4 байта, диапазон от -2 147 483 648 до 2 147 483 647
  • long: 4 байта или 8 байтов, в зависимости от системы. Длинное 8-байтовое целое число находится в диапазоне от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807 (64-разрядная версия).
  • long long: 8 байт, диапазон от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807

Вы можете использовать оператор sizeof для определения размера целочисленного типа в байтах:

int main() {
  int myInt = 42;
  std::cout << sizeof(myInt) << std::endl; // prints 4
}

Тип литья

  • Вы можете преобразовать целочисленную переменную из одного типа в другой с помощью неявного приведения.
short myShort = 42;

long myLong = myShort;
  • Будьте осторожны, присваивая большое число переменной меньшего размера. Если он выходит за пределы диапазона, ошибка не обнаруживается, но результат будет неправильным. Например:
int main() {
  int myInt = 32768;
  short myShort = myInt;
  std::cout << myShort << std::endl; // prints -32768
}

Это вызвано переполнением, которое будет рассмотрено позже.

Кастинг немного сложен и также будет обсуждаться подробнее в будущем.

Вот и все на сегодня, получайте удовольствие от обучения!