В этом уроке мы рассмотрим, как определять размер различных типов данных в C++.
Оператор sizeof
Оператор sizeof
используется для определения размера типа данных или переменной в байтах. Синтаксис:
sizeof(тип)
sizeof переменная
Пример использования sizeof:
#include <iostream>
int main()
{
std::cout << "bool:\t\t" << sizeof(bool) << " bytes\n";
std::cout << "char:\t\t" << sizeof(char) << " bytes\n";
std::cout << "wchar_t:\t" << sizeof(wchar_t) << " bytes\n";
std::cout << "char16_t:\t" << sizeof(char16_t) << " bytes\n";
std::cout << "char32_t:\t" << sizeof(char32_t) << " bytes\n";
std::cout << "short:\t\t" << sizeof(short) << " bytes\n";
std::cout << "int:\t\t" << sizeof(int) << " bytes\n";
std::cout << "long:\t\t" << sizeof(long) << " bytes\n";
std::cout << "long long:\t" << sizeof(long long) << " bytes\n";
std::cout << "float:\t\t" << sizeof(float) << " bytes\n";
std::cout << "double:\t\t" << sizeof(double) << " bytes\n";
std::cout << "long double:\t" << sizeof(long double) << " bytes\n";
return 0;
}
Примечание: Размеры типов данных могут отличаться в зависимости от компилятора и архитектуры компьютера.
Стандартные размеры типов данных
Стандарт C++ гарантирует минимальные размеры для некоторых типов данных:
bool
: не менее 1 байтаchar
: ровно 1 байтshort
: не менее 2 байтint
: не менее 2 байт (обычно 4 байта)long
: не менее 4 байтlong long
: не менее 8 байтfloat
: не менее 4 байтdouble
: не менее 8 байтlong double
: не менее 8 байт
Заключение
Знание размеров типов данных важно для эффективного использования памяти и понимания ограничений различных типов. Используйте sizeof
для определения точных размеров типов на вашей системе.