#include #include int global_var = 42; // .data static int static_var = 7; // .data int uninit_var; // .bss const int const_var = 99; // .rodata int main() { int local_var = 10; // stack static int static_main = 5; // .data int *heap_var = malloc(sizeof(int)); // heap *heap_var = 123; printf("local_var : %p : %d\n", &local_var, local_var); printf("*heap_var : %p : %d\n", heap_var, *heap_var); printf("uninit_var : %p : %d\n", &uninit_var, uninit_var); printf("static_main: %p : %d\n", &static_main, static_main); printf("static_var : %p : %d\n", &static_var, static_var); printf("global_var : %p : %d\n", &global_var, global_var); printf("const_var : %p : %d\n", &const_var, const_var); // Código da função main (.text)... printf("main() : %p\n", &main); // Pausa para análise na linha de comandos... puts("Tecle algo para terminar..."); getchar(); free(heap_var); return 0; }