Criação de Ponteiros
07/10/2004
0
new(ponteiro);
e desaloco com
dispose(ponteiro);
e em C++ qual a forma de alocação e desalocação?
Bruno Belchior
Posts
07/10/2004
Raimundo_farias
bom,
você vai incluir a seguinte biblioteca.
#include <alloc.h>
o comando para criar o ponteiro é:
int *valor = (int *) malloc(sizeof(int));
int *valor - (declaração da variavel ´valor´ como um ponteiro para inteiro)
(int *) - com isso vc garante que o endereço que for retornado pela função malloc seja do tipo ponteiro para inteiro. no C, dependendo do compilador isso pode variar acho que por default ele retorna ponteiro pra char. isso se chama CAST (conversão explicita de tipo)
malloc(sizeof(int)) - a função malloc() é utilizada para retornar o endereço da memoria (igual a new()) a diferença é que a gente pode chamar a função sizeof() dentro dela por uma questão de portabilidade tipo, independente da maquina que esta compilando ou melhor da forma com que diferentes arquiteturas tratam inteiros (tamanho do numero em bits) o comando malloc(sizeof(int)) retorna um espaço de memoria que comporte um tipo de dado inteiro para esta maquina.
vc pode usar tambem:
struct MinhaEstrutura *valor = (struct MinhaEstrutura *) malloc(sizeof(struct MinhaEstrutura));
para remover da memoria use:
free(valor);
Bem Bruno, espero ter tirado suas duvidas.
Qualquer coisa é só postar novamente!
Raimundo Farias
07/10/2004
Bruno Belchior
resolveu o meu problema é q eu tava portando meu codigo de pilha e fila duplamente encadeada com nó descritor para C++, tava funcionando mas eu queria otimizar o código p/ remover qualquer lixo de memória valeuuu
Clique aqui para fazer login e interagir na Comunidade :)