이런 AC 프로그램이 있습니다
main.c
#include <stdio.h>
#define SOME_VAR 10
static int heap[SOME_VAR];
int main(void) {
printf("%p", heap);
return 0;
}
컴파일 된 프로그램을 몇 번 실행할 때 이것을 출력합니다.
0x58aa7c49060
0x56555644060
0x2f8d1f8e060
0x92f58280060
0x59551c53060
0xd474ed6e060
0x767c4561060
0xf515aeda060
0xbe62367e060
왜 항상 060으로 끝나나요? 그리고 배열은 힙에 저장됩니까?
편집 : 나는 Linux에 있고 ASLR을 사용하고 있습니다. gcc를 사용하여 프로그램을 컴파일했습니다.