
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;
}
}
}
A evolução do Linux e as mudanças que se fazem necessárias desde o seu lançamento
Maquina modesta - a vez dos navegadores ferrarem o usuario
Fscrypt: protegendo arquivos do seu usuário sem a lentidão padrão de criptograr o disco
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Warsaw não é reconhecido no Google Chrome 147.0.7727.55 [RESOLVIDO] (9)









