Операция sizeof
Эта операция выполняется на стадии компиляции. Результатом этой операции является число байтов, необходимое для размещения объекта в памяти. Существует два варианта синтаксиса этой операции. В первом из них единственный операнд операции определяет некоторый тип языка, и он должен быть заключен в скобки:
sizeof ( float ) sizeof ( int )
Во втором операнд задает некоторое выражение и здесь использование скобок необязательно:
sizeof a; sizeof *ip; sizeof array[ i ];
Заметим, что при получении размеров массивов, несмотря на то, что имя массива является указателем, результатом операции sizeof array, где array - имя некоторого массива, является длина в байтах этого массива. Это свойство можно использовать для вычисления числа элементов в массиве:
const n = 20; int array [n]; . . . int num=sizeof array / sizeof(int) // num = = 20.
Результатом операции sizeof над ссылкой является длина типа, с которым сопоставлена ссылка, т.е. sizeof( double & ) и sizeof( double ) эквивалентны.
- Размеры структуры Типы struct, union и enum в C++
Наверняка, вы предполагаете, что размер структуры равен сумме размеров ее членов. Это не так. Вследствие выравнивания объектов разной длины в структуре могут появляться безымянные "дыры". Так, например, если переменная типа char занимает один байт, а int - четыре байта, то для структуры:
#include <iostream> using namespace std; struct Test { char c; int i; }; void main () { Test d={'#',78}; cout<<sizeof(Test)<<" "<<sizeof(d)<<"\n\n"; }
может потребоваться восемь байт, а не пять. Правильное значение возвращает операция sizeof.
📌 Для тестирования скриптов, установщиков VPN, Python ботов рекомендуем использовать надежные VPS на короткий срок. Если вам нужна помощь с более сложными задачами, вы можете найти фрилансера, который поможет с настройкой. Узнайте больше о быстрой аренде VPS для экспериментов и о фриланс-бирже для настройки VPS, WordPress. 📌
💥 Подпишись в Телеграм 💥 и задай вопрос по сайтам и хостингам бесплатно!
7 Самых Популярных Статей
- Как запустить скрипты и веб-приложения на Python
- Что такое страны TIER 1,2,3
- 7 способов сравнения файлов по содержимому в Windows или Linux
- Установка и тестирование веб-панели HestiaCP
- Китайский VPN Shadowsocks простая установка и настройка
- top, htop, atop определение загрузки ОС (Load average, LA)
- Использование rsync в примерах