/* * Alterando o tamanho do segmento de dados */ #include #include #include #include #include #include char str_dados[10]; int main() { char str_pilha[10], *topo; int pagesize = getpagesize(); printf("Tamanho em bytes de um endereco: %lu\n", sizeof(char*)); printf("Tamanho em bytes de uma pagina: %d\n", pagesize); printf("str_pilha = %p\n", str_pilha); printf("main = %p\n", (void*) main); printf("str_dados = %p\n", str_dados); topo = sbrk(0); printf("Topo da area de dados = %p\n", topo); *(topo-1) = 0; /* Segmentation fault? *topo = 0; */ if (sbrk(pagesize) == topo) printf("Nao foi possivel alterar o segmento de dados\n"); return 0; }