Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

wallter

Excluir registro

Recommended Posts

Galera é o seguinte estou com um codigo dividido em camadas. Consigo cadastrar tudo beleza mais na hora de excluir e consultar não consigo da um erro. Como posso fazer?

 

Este é o codigo de cadastrar q ta dando tudo certo. como devo escrever o de excluir e o de consultar? posso usar a mesma struct Loja p;?

#include <LojaGUI.h>
#include <LojaControlador.h>

void cadastrarLojaGUI()
{
     struct Loja p;
     
     printf("\n\n\n::::::::::::::::::::::::::CADASTRO::::::::::::::::::::::::::\n\n");
     printf("\nDigite o Codigo: ");
     gets(p.codigo);
     gets(p.codigo);
     printf("\nDigite o Nome: ");
     gets(p.nome);
     printf("\nDigite a Localizacao: ");
     gets(p.local);
     printf("\nProprietario: ");
     gets(p.dono);
     salvarLojaCrtl(p);
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não use gets.

 

você mostrou o código do "menu"/entrada de dados, que não faz absolutamente nada em relação ao armazenamento da struct na lista.

Fica difícil comentar a criação da lista se ninguém vê o código que cria e salva os elementos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Usa-se o q no lugar do gets?

 

Repositorio estrutura:

struct Loja
{
	char codigo[6];
    char nome[60];
	char local[60];
	char dono[60]
};

void salvarLoja(struct Loja p);
struct Loja* lerLoja();
repositorio:

void salvarLoja(struct Loja p)
{
	char text[sizeof(struct Loja) + 4];

	FILE *f = fopen("CADASTROS.txt", "a+");

	memset(text,0,sizeof(struct Loja) + 4);
	strncat(text, p.codigo, strlen(p.codigo));
	strncat(text, "/",1);
	strncat(text, p.nome, strlen(p.nome));
	strncat(text, "/",1);
	strncat(text, p.local, strlen(p.local));
	strncat(text, "/",1);
	strncat(text, p.dono, strlen(p.dono));
	strncat(text, "\n\n",1);

	fputs(text, f);

	fclose(f);
}
Controlador:

#include <LojaControlador.h>
#include <string.h>

void salvarLojaCrtl(struct Loja p)
{   
    if (strlen(p.codigo)==0)
    {
        printf("\nCADASTRO NAO EFETUADO!\nTODOS OS CAMPOS DEVEM SER PREENCHIDOS");
        return;
    } 
  
  if (strlen(p.nome)==0)
    {
        printf("\nCADASTRO NAO EFETUADO!\nTODOS OS CAMPOS DEVEM SER PREENCHIDOS");
        return;
    } 
    
    if (strlen(p.local)==0)
    {
        printf("\nCADASTRO NAO EFETUADO!\nTODOS OS CAMPOS DEVEM SER PREENCHIDOS");
        return;
    } 
    
    if (strlen(p.dono)==0)
    {
        printf("\nCADASTRO NAO EFETUADO!\nTODOS OS CAMPOS DEVEM SER PREENCHIDOS");
        return;
    } else{
           printf("\nCADASTRO EFETUADO!");}
      salvarLoja(p); 
}

é isso!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem um tópico sobre gets, fflush(stdin), void main e outras tralhas. Mais fácil falar p/ você ler que ficar repetindo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.