C arquivo txt e vetor

3 respostas
J

Bom, tenho q passar os numeros que estao no arquivo txt pra dentro de um vetor, como faço?

obs: está pegando certinho os numeros, ja imprimi na tela e funciona, o problema eh passar pra dentro de um vetor;

a parte de ler os dados do arquivo

if ((fp = fopen("Arq10000.txt", "r")) == NULL) { // Se houve erro na abertura
  
     return -1;
}
   while((c = fgetc(fp))!=EOF){
  
    printf("%c",c);
    
v[i] = c;
i++;
    
}    


  
  fclose(fp);

esse i++ esta travando o programa.

eis a declaração do vetor:

int * v = (int*) malloc(tam*sizeof(int));

Parece que ta pegando caracter por caracter, preciso de pegar numeros grandes, por exemplo 1000 e ele ta pegando um por um, 1 depois 0 depois 0 depois 0.
Pesquisando eu vi que o fgetc pega inteiro. Como faço pra pegar o numero completo de cada linha por exemplo 1290 sem ser por caracter?

3 Respostas

J

Já tentou colocar o &c ao invés de c ?

J

Não deixa fala que não posso colocar char em int.

E

Esquisito você estar dizendo que “está pegando certinho os números”.
Que eu saiba, %c serve para ler um caracter de cada vez, não números. Para ler números, usa-se fscanf (fp, “%d”, &x).

Criado 23 de setembro de 2012
Ultima resposta 24 de set. de 2012
Respostas 3
Participantes 3