Код: Выделить всё
#include
typedef struct node{
int a;
char b;
int c;
} Node;
int main(){
Node obj1;
Node obj2;
printf("Size of struct is %ld\n",(char*)&obj1 - (char*)&obj2);
return 0;
}
Я также попробовал отключить оптимизацию компилятора.
Ожидание разница между obj1 и obj будет равна +ve, поскольку сначала в стеке будет размещен объект obj1 с более высоким адресом, а затем — obj2.
Подробнее здесь: https://stackoverflow.com/questions/792 ... ory-layout
Мобильная версия