이거는 소스코드도
여기서 루프 처음 돌았을때 새로 생성된 Node newNode(val)의 주소가 0x009cfe78이고
루프 끝나면 다음 루프로 돌아와서 다시 새로운 Node newNode(val) 이렇게 선언하면
새로운 newNode가 생성되어야 하는거 아님?
그런데 새로운게 생성되는게 아니라 주소(0x009cfe78)는 그대로이고 데이터 값만 바뀌는데
이거 왜 이러는 거임...
원래 루프 안에서 새로운 변수 선언하면 그 변수는 사라지고 새로운 주소 가진 변수 생성되는건지 알았는데
주소는 남아있고 그 주소 위에 새로운 데이터가 들어오는거였음?
내가 원하는 데로 하려면 메모리 반환 후에 다시 Node newNode(val)해야뎀?
지역변수
어셈봐바 아마 주소 돌림빵하고있을걸
ㅇㅇ 디버깅 해봤는데 계속 똑같은 주소 쓰던데 원래 ㅇ게 정상임? 아니면 컴파일러마다 다름?
컴파일러최적화가 들어가니까 아무래도
이 부분은 주요 컴파일러마다 다르진 않을듯
힙과 스택