메모리에 할당에 대해 궁금한점이..
아이뻐
2023.04.01
질문 내용 :
처음에 소스코드를 작성하고 컴파일을 하면 전처리기-컴파일-링크-exe파일 생성 순으로 진행하게 된다고 배웠습니다.
그리고 메모리를 할당할때 프로그램이 실행되면 data영역에 전역변수와 static변수가, 컴파일 타임에 stack영역에 지역변수와 매
개변수가, 런타임에 heap영역에 동적할당할 변수가 할당되는 것으로 알고있는데...
좀 혼란스러운게 exe파일이 만들어 졌더라도exe파일이 실행되면 다시 또 컴파일이 되는건가요? 컴파일은 소스코드를 기계어 코
드로 변환하는 과정으로 알고 있는데변환되어 만들어진 exe파일에 또 컴파일이 된다는 것도 좀 이상한거 같고, 컴파일 타임이 없
다면 exe파일을 실행했을때지역변수와 매개변수를 할당할 시간이 없는 셈이 되고, 제가 무엇을 잘못 이해하고 있는 건지 잘모르
겠네요 ^^;
답변좀 부탁드릴께요~