Enviado em 16/01/2017 - 16:18h
Boa tarde,
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef struct {
int id;
char * login;
char * senha;
} database;
size_t filesize( const char * path ) {
size_t size=0;
FILE *fp = fopen(path,"rb");
if(fp != NULL) {
fseek(fp, 0L, SEEK_END);
size = ftell(fp);
rewind(fp);
fclose(fp);
}
return size;
}
int main() {
database db[10];
database temp;
FILE * fp;
int i;
puts ("Iniciando\n");
puts ("Criar estrutura da base de dados.\n");
//Criar estrutura da base de dados.
for(i=0; i<sizeof(db)/sizeof(database); i++) {
db[i].id=0;
db[i].login = (char*) malloc(sizeof(char) * 30 +1);
db[i].senha = (char*) malloc(sizeof(char) * 30 +1);
}
puts("Criar Usuário\n");
//Criar usuário
temp.id = 1;
temp.login = (char*) malloc(sizeof(char) * 30 +1);
strcpy(temp.login,(char*)"TesteLogin");
temp.senha = (char*) malloc(sizeof(char) * 30 +1);
strcpy(temp.senha,(char*)"testesenha");
db[0] = temp;
puts("Guardar na base de dados db.bin\n");
//Guardar na base de dados db.bin
fp = fopen("db.bin","w+b");
fwrite(&db,sizeof(&db),sizeof(database),fp);
fclose(fp);
puts("Resetando a Estrutura\n");
//Resetando a Estrutura
//memset(&db,0,sizeof(db));
puts("Carregar conteúdo da base de dados.\n");
//Carregar conteúdo da base de dados.
fp = fopen("db.bin","rb");
fread(&db,filesize("db.bin"),sizeof(database),fp);
fclose(fp);
puts("Listar conteudo da base de dados.\n");
//Listar conteudo da base de dados.
for(i=0; i<sizeof(db)/sizeof(database); i++) {
printf("Id do Usuário: %d, Login: %s, Senha: %s\n",db[i].id,db[i].login,db[i].senha);
}
puts("\nProcurar pelo login TesteLogin e trocar a senha.\n");
//Procurar pelo login TesteLogin e trocar a senha;
for(i=0; i<sizeof(db)/sizeof(database); i++) {
if(strcmp(db[i].login,(char*)"TesteLogin")==0) {
strcpy(db[i].senha,(char*)"SenhaTrocada");
}
}
puts("Guardar na base de dados db.bin\n");
//Guardar na base de dados db.bin
fp = fopen("db.bin","w+b");
fwrite(&db,sizeof(&db),sizeof(database),fp);
fclose(fp);
puts("Carregar conteúdo da base de dados.\n");
//Carregar conteúdo da base de dados.
fp = fopen("db.bin","rb");
fread(&db,filesize("db.bin"),sizeof(database),fp);
fclose(fp);
puts("Listar conteudo da base de dados.\n");
//Listar conteudo da base de dados.
for(i=0; i<sizeof(db)/sizeof(database); i++) {
printf("Id do Usuário: %d, Login: %s, Senha: %s\n",db[i].id,db[i].login,db[i].senha);
}
return 0;
}
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Instalar o Microsoft Edge no Slackware 15
Instalando Brave Browser no Linux Mint 22
vídeo pra quem quer saber como funciona Proteção de Memória:
Programa duplicado no "Abrir com" e na barra de pesquisa do ... (2)
Interface gráfica não funciona (2)