Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Francklin

[Resolvido] [Manipulação Dados]: Strtok/atoi

Recommended Posts

Bom dia pessoal,

sou iniciante em programação.

Mas a alguns dias descobri umas coisas interessantes e estou tentando fazer um programa para uma locadora-fantasia.

No entanto quando escolho a opção de exibir as informações contidas no arquivo bd.txt exibe um monte de caracteres estranhos.

Poderiam me ajudar?

 

Aqui está a parte do código:

void funcb(){
   char nome[100], endereco[200], acess, temp[301];
      unsigned int n_end, cep, rg;

FILE *bd;
bd = fopen("/home/francklin-note/bd.txt", "r");

if(bd == NULL){printf("\nO arquivo nao pode ser aberto!");
}

else{
fgets(temp, 300, bd);
printf ("Cliente  |  Endereco, Numero  |  CEP  |  RG\n");

while(!feof(bd)){
		nome[100] = strtok(temp,",");
		endereco[200] = strtok(NULL,",");
		n_end = strtok(NULL,",");
		cep = strtok(NULL,",");
		rg = strtok(NULL,",");
		printf("%s|%s|%d|%d|%d\n", nome, endereco, n_end, cep, rg);
		fgets(temp, 300, bd);
		}
		}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Francklin,

 

A primeira vista você está errando ao pegar o retorno da função strtok.

Esta função retorna um ponteiro para char e não uma string.

 

nome[100] = strtok(temp,",");

Não é desta forma que se inicializa uma string.

 

Segue um link com a explicação de strtok:

http://www.cplusplus.com/reference/clibrary/cstring/strtok/

 

Sugiro que você estude um pouco sobre manipulação de strings em C.

http://pt.wikibooks.org/wiki/Programar_em_C/Strings

 

Espero ter ajudado, FLW!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.