Olá, estou começando na área de TI e estou num projeto em que tenho que modificar imagens em ppm. Primeiramente tenho que salvar a imagem em um vetor alocado porém quando tento acessar esse vetor resulta em falha de segmentação, alguém poderia me ajudar? segue aí embaixo o código:
#include <stdio.h>
#include <stdlib.h>
typedef struct{
int r,g,b;
} pixel;
pixel *vetor;
int leitura(pixel *vetor, char *codigo, int *coluna, int *linha, int *maximo){
int i;
char nome[20];
printf("Digite o nome do arquivo a ser aberto:\n");
scanf("%s",nome);
FILE *arq;
arq = fopen(nome,"r");
if(arq == NULL){
printf("Erro na abertura do arquivo!\n");
return 0;
} else {
fscanf(arq,"%s",codigo);
fscanf(arq,"%d",coluna);
fscanf(arq,"%d",linha);
fscanf(arq,"%d",maximo);
vetor = malloc(sizeof(pixel)*((*linha**coluna)/3));
for(i=0;i<((*linha**coluna)/3);i++){
fscanf(arq,"%d",&vetor.r);
fscanf(arq,"%d",&vetor.g);
fscanf(arq,"%d",&vetor.b);
}
}
fclose(arq);
return 0;
}
int main(){
int coluna, linha, maximo;
char codigo;
leitura(vetor,&codigo,&coluna,&linha,&maximo);
printf("%d",vetor[1].r); // NESSA PARTE NÃO CONSIGO EXIBIR O VALOR NA TELA OU FAZER QUAISQUER ALTERAÇÃO NO VETOR SALVO;
return 0;
}
Atenciosamente.