Como pesquisar em arquivo binário?
Bem, meu codigo é uma biblioteca e após fazer o cadastro do usuario tentei implantar um sistema de buscar pelo cpf cadastrado, só que ao compilar o programa da erro justamento no fseek. segue algumas partes do codigo
typedef struct
{
char nome[50];
int telefone;
char cpf[11];
int senha;
char categoria;
}cadastroUsuario; //Aqui é a estrutura do usuario
void exibirDadosUsuario() // Aqui é a função que faz a busca do usuario. O usuario digitaria seu cpf
e seus dados seriam imprimidos
{
char cpf[11];
Usuario u;
arquivo = fopen("usuario.bin","rb");
if(!arquivo)
{
printf("Erro ao abrir arquivo\n");
exit(0);
}
else
{
printf("\t\t\t Buscar por usuario\n\n");
printf("\nInsira o cpf: ");
scanf("%s", &cpf);
fseek(arquivo, sizeof(cadastroUsuario)*(cpf-1), SEEK_SET); // Posiciona o registro no inicio//O erro acontece aqui
if (ferror(arquivo)){
printf("\nErro na Gravação do Arquivo");
}
else{
fread(&u, sizeof(cadastroUsuario), 1, arquivo); // Lê o registro informado
if (ferror(arquivo)){
printf("\nErro na leitura do arquivo");
}
else{
printf("\nNome do Usuario: %s", u.nome);
printf("\nTelefone do Usuario: %s", u.telefone);
printf("\nCategoria: &s", u.categoria);
printf("Senha do Usuario: %i", u.senha);
}
}
}
printf("\n\n");
system("pause");
fclose(arquivo);
}
Erro mostrado pelo codebloks : |error: invalid operands to binary (have 'unsigned int' and 'char ')|
Discussão (1)
Carregando comentários...