Criação de Ponteiros

07/10/2004

0

pessoal trabalho com ponteiros em pascal lá eu os aloco com o comando
new(ponteiro);

e desaloco com
dispose(ponteiro);

e em C++ qual a forma de alocação e desalocação?


Bruno Belchior

Bruno Belchior

Responder

Posts

07/10/2004

Raimundo_farias

Oi cara!
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


Responder

07/10/2004

Bruno Belchior

obrigado...
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


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar