Ir ao conteúdo
  • Cadastre-se

C Como evitar lixo de memória em um vetor?


alan.modesto
Ir à solução Resolvido por devair1010,

Posts recomendados

Po galera to construindo um vetor vazio, mas quando eu vou exibir ele ainda Vazio ele gera lixo de memória, como fazer para não ter lixo de memória, segue trecho do codigo onde ele apresenta lixo de memória

#include <stdio.h>
#define QUANT 5

void exibirVetor(int vetor[], int tamanho){
	int i;
	for(i=0;i<tamanho;i++){
		printf("vetor[%d] = %d\n", i, vetor[i]);
	}
}

int main(void) {
  //declaração de variáveis
  int v3[QUANT] ;
int N, x, h, l, resp;
  do{
    printf(" \n 1) Inserção de um novo número \n 2) Remoção de determinado valor \n 3) Remoção do elemento que encontra-se em uma dada posição \n 4) Alteração de um valor por outro \n 5) Busca de determinado número, retornandoa sua posição (caso exista no vetor) ou o valor -1 se não for encontrado; \n 6) Exibição de todos os elementos do vetor.");

    printf("digite um numero: ");
    scanf("%d", &N);



    if(N == 6){//funciona
        exibirVetor(v3, QUANT);
    }

  }
   while(N != 7);

  }

 

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

  • Solução

@alan.modesto      em cada posição da memória do pc sempre tem alguma coisa guardada nela ,  então não se pode excluir nada , apenas substituir por outro valor qualquer ,  e quando se cria um vetor , o compilador reserva um espaço na memória para armazenar a quantidade de valores especificada , e não modifica nada que já esteja armazenado nessas posições , assim pode haver qualquer valor , e se você quer que tenha um valor considerado nulo , como o zero , por exemplo , então ao criar o vetor já preencha ele tendo todas as posições com esse valor "zero " , também conhecido como inicialização de variáveis ,  , ..,    ,   ...   ,:

int v3[QUANT] = { 0 } ;

que mostra 

vetors.jpg.e0516499d025fe760f15fbb32cfa13e9.jpg

Link para o comentário
Compartilhar em outros sites

11 horas atrás, alan.modesto disse:

Po galera to construindo um vetor vazio, mas quando eu vou exibir ele ainda Vazio ele gera lixo de memória, como fazer para não ter lixo de memória, segue trecho do codigo onde ele apresenta lixo de memória

 

Não existe "lixo de memória" assim como não existe "lixo de teclado". Existe a memória e sempre tem algo lá. Se quer estar certo do que tem lá simplesmente grave algo lá antes de mostrar.

 

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!