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;
}
}
}
Máquina perereca - até onde é possível o uso de Linux?
Mitigação - O que é e quando é "seguro" desabilitar
Atualizar Debian Online de uma Versão para outra
A arte e a prática da Disciplina a longo prazo
Topgrade - Atualize seu sistema Linux inteiro com um único comando
Site com diversos emojis para seus códigos
Um modo leve de ouvir/ver áudio/vídeo da internet em máquinas pererecas
A escola é altamente ineficiente e ineficaz! (7)
O que você está ouvindo agora? [2] (199)