hobby | 200 |
name | 100 |
price | 100.5 |
age | 25 |
내가 알기로는 스택은 아래에서부터 차례로 쌓이는 걸로 있음
그러니 위처럼 age, price, name, hobby 순으로 아래에서부터 쌓여야 되는 거 아님?
name | 100 |
hobby | 200 |
price | 100.5 |
age | 25 |
그런데 책에서는 위 표처럼 나와있음.
책이 문제가 있는 건지 아님 내가 잘못 생각하고 있는 건지 답변 좀
hobby | 200 |
name | 100 |
price | 100.5 |
age | 25 |
내가 알기로는 스택은 아래에서부터 차례로 쌓이는 걸로 있음
그러니 위처럼 age, price, name, hobby 순으로 아래에서부터 쌓여야 되는 거 아님?
name | 100 |
hobby | 200 |
price | 100.5 |
age | 25 |
그런데 책에서는 위 표처럼 나와있음.
책이 문제가 있는 건지 아님 내가 잘못 생각하고 있는 건지 답변 좀
스택이 뭔데
https://stackoverflow.com/questions/30354097/how-to-printf-a-memory-address-in-c/30354164
여기
보이는대로 따라서
선언한 변수 순서대로 출력해보면
먼저 선언한 순서대로
메모리에 차곡차곡 쌓여있는거 볼 수 있음
근데 하나씩 할당해제되는건 어떻게 보는진 모르겠다
아 자바잖아
머암튼 저기서 말하고싶은건 스택영역이 어떻게 생겼는지보단 힙과 스택을 구분해서 이해하라고 적어논거같음. int, double같은 단일값만 가지는 그런 변수는 스택에 모든 정보가 다있고 String객체같은애들은 일단 변수는 주소만 갖고있는데 실제 유의미한 정보는 힙에 따로 저장되어있다는 얘기를 하고싶은거고
ㄳ
실제로 int 4바이트면 걍 예시로 int a, int b 선언해놨고 스택영역 어딘가에 0x0030 ~ 0x004F 까지 4바이트만큼 a값 저장되어있고 0x0050 ~ 0x006F 까지 4바이트만큼 b 순서대로 저장되어있음 너가 이해한게 맞고 낮은번지부터 하나씩 쌓여가는거 맞음 책에서 그림은 그냥 굳이 역순으로 보여줄 필요가 있는 파트가 아니라 , 힙과 스택이란 개념이 있다는걸 말하고싶은거임