Enviado em 11/11/2018 - 11:36h
Pessoal, quando eu leio o arquivo, o ultimo elemento é lido duas vezes, qual é o meu erro?
#include <stdio.h>
#include <stdlib.h>
typedef struct _login {
char name[100];
char password[16];
} Login;
void show_file(FILE *);
int main(int argc, char *argv[]) {
FILE *fp;
Login system_user;
Login aux;
if ((fp = fopen("Files/password.txt", "a+b")) == NULL) {
fprintf(stderr, "Arquivo não pode ser aberto");
exit(EXIT_FAILURE);
}
printf("Digite o seu nome: ");
fflush(stdin);
fgets(system_user.name, 100, stdin);
printf("Digite sua senha: ");
fflush(stdin);
fgets(system_user.password, 16, stdin);
fwrite(&system_user, sizeof(Login), 1, fp);
rewind(fp);
show_file(fp);
fclose(fp);
exit(EXIT_SUCCESS);
}
void show_file(FILE *fp)
{
Login aux;
while (1) {
fread(&aux, sizeof(Login), 1, fp);
puts(aux.name);
puts(aux.password);
if (feof(fp)) {
break;
}
}
}
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Como instalar o Google Cloud CLI no Ubuntu/Debian
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)
Alguém que utilize o Warsaw do BB no Ubuntu 24.04 (2)
como instalar o docker desktop e o docker no debian 12 arm64 (11)