Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouBárbara Araujo Alterado mais de 10 anos atrás
1
Vetor de Ponteiros Exemplo de Alocação
2
Escrever Vetor de Vetores de floats int main() { int i, k, n; float **vetor; // vetor de vetores int *tamanho; // vetor com o tamanho de cada um dos vetores printf("entre com o numero de vetores que deseja processar\n"); scanf("%d", &n); if( n <= 0 ) { printf("erro: numero de vetores < 0\n"); exit(1); } //alocação dinâmica do vetor de tamanhos if( (tamanho = (int*)malloc(n*sizeof(int))) == NULL ) { printf("nao foi possivel alocar memoria para o vetor de tamanhos!!\n"); exit(1); } //alocação dinâmica do vetor de vetores if( (vetor = (float**)malloc(n*sizeof(float*))) == NULL ) { printf("nao foi possivel alocar memoria para o vetor de ponteiros!!\n"); exit(1); }
3
//Escrevendo cada um dos vetores for( k=0; k<n; k++ ) { printf("entre com o tamanho do vetor %d\n", k+1 ); scanf("%d", &tamanho[k] ); if( tamanho[k] <= 0 ) { printf("erro: numero de elementos do vetor %d < 0\n", k+1 ); exit(1); } // alocação dinâmica de cada um dos vetores de floats if( (vetor[k] = (float*) malloc(tamanho[k]*sizeof(float))) == NULL ) { printf("nao foi possivel alocar memoria para o vetor %d\n", k+1); exit(1); } // entrando com cada um dos elementos de cada vetor for( i=0; i<tamanho[k]; i++ ) { printf("entre com o valor da posicao %d do vetor %d:", i, k+1); scanf("%f", &vetor[k][i] ); } (...)
4
//No final, liberação da memória for( k=0; k<n; k++ ) free(vetor[k]); free(vetor); free(tamanho); }
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.