как хранятся структуры в C/C++ и классы
при компиляции программы , компилятор видит структуру и запоминает ее размер(с выравниванием), и уже при создании переменной он видит тип переменной, который занимает сколько то уже места, выделяет участок памяти под эту переменную(про локальный стек вызова, кучу не трогаю)? потом создаем еще переменную с именем структуры, он на тебе еще памяти.так все происходит? и как я понимаю в С память под структуры выделяется непрерывным блоком, и я могу ее например кастовать к (char *) и побайтово пробежаться типа memcpy, а объекты под классы в с++ тоже так же выделяются непрерывно и по ним можно побайтово пробежаться?
struct test
{
int i;
int j;
};
int main()
{
test ptr;
return 0;
}
когда мы создаем ptr, как он знает что ему надо выделить участок в 8 байт?