.) cda[10];
cout « " struct cd[10] : " « sizeof(cda) « " элементов: " 1>« sizeof(cda)/sizeof(cda[0]) « endl;
char *cp = new char [10];
cout « " new char[10]: " « sizeof(cp) « " *cp: " 4>« sizeof(*cp) « endl;
}
Результатом работы программы будет следующий текст:
Результаты различных случаев применения операции sizeof.
char: 1
chars: 1
char*: 4 \
wchar_t: 2 • •
bool: 1
short: 2 ,
int: 4
long: 4
float: 4
double: 8
long double: 10
DIGIT: 4 Member: 4
char[10]: 10 элементов: 10
double[10]: 80 элементов: 10
struct cd[10]: 90 элементов: 10 new char[10]: 4 *cp: 1
Заметьте, что с помощью операции sizeof невозможно определить объем памяти, адресуемой с помощью указателя и выделенной с помощью операции new.
Далее...
В этой главе мы рассмотрели процесс создания операторов из элементарных компонентов, таких как переменные и операции. Операторы бывают четырех разновидностей: последовательные операторы, операторы выбора, операторы цикла и операторы перехода.
Последовательные операторы — это все операторы, которые не управляют процессом выполнения программы. Сюда можно отнести все операторы, не попадающие в другие категории.
Операторы выбора выполняют другие операторы в зависимости от определенных критериев. К ним принадлежат операторы if и switch.