Ir ao conteúdo

C++ Alguem poderia me ajudar a ver o que eu estou fazendo de errado


Ir à solução Resolvido por devair1010,

Posts recomendados

Postado
Citação

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

//PRECISA SER CRIADO 3 USUARIOS: ADMINISTRADOR, USUARIO DA EMRESA E CLIENTE
FILE *Armazem;
struct Produto;
struct PosCompra;
struct DistProd;

typedef struct Produto {
char nomeproduto[30];
int quantproduto[10];
int precoproduto[10];    
};

typedef struct PosCompra{
    char posproduto[30];
    char chegouok[5];
    int data;
};

typedef struct DistProd{
    char nomeprodudistribuir[30];
    int quantprodfilial[30];
    int nomefilial[30];
};

int main(){
    int escolha;
    do{
    //ABRINDO O MENU COM O SWITCH (ESCOLHA)
    CriarArquivo();
    escolha=menu();
    switch(escolha){
        case 0:
            exit;
            break;
        case 1:
            cadastro();
            break;
        case 2:
            poscompra();
            break;
        case 3:
            distribuir();
            break;
    }
}while (escolha!= 0);
    
}
//CRIANDO O ARQUIVO
int CriarArquivo(){
Armazem = fopen("Armazem.txt", "rt");
if (Armazem != NULL){
    printf("\n\t Arquivo aberto com sucesso para leitura");
}else{
Armazem = fopen ("Armazem.txt", "wt");
if (Armazem != NULL){
    printf("\nArquivo criado com sucesso\n");
}
    }
    }
    
int menu(){//MENU
    int escolha;
    printf("\nDigite (1) para cadastrar o produto no sistema");
    printf("\nDigite (2) para adicionar os dados pós compra");
    printf("\nDigite (3) para distribuir os produtos");
    printf("\nDigite (4) para editar algum produto");
    printf("\nDigite (5) para excluir algum produto");
    printf("\nDigite (6) para mostrar os produtos cadastrados");
    printf("\nDigite (0) para sair");
    printf("\nEscolha alguma alternativa acima\n"); 
    scanf("%d", &escolha);
    return escolha;
}

int cadastro(){//CADASTRO DOS PRODUTOS

int Produto;
    Produto = fopen("Produto.txt", "rt");
if (Produto != NULL){
    printf("\n\t Arquivo aberto com sucesso para leitura");
}else{
Produto = fopen ("Produto.txt", "wt");
if (Produto != NULL){
    printf("\nArquivo criado com sucesso\n");
}
    }
    
    char nomeproduto[30];
    int quantproduto[10];
    int precoproduto[10];
    printf("\nDigite o nome do produto\n");
    scanf("%s", nomeproduto);
    fwrite(&nomeproduto, sizeof(nomeproduto),1, Produto);
    printf("\nDigite a quantidade do produto(UNIDADE)\n");
    scanf("\n%d", quantproduto);
    printf("\nDigite o preço pago pela compra dos produtos\n");
    scanf("\n%d",precoproduto);
    
}
int poscompra(){//POSCOMPRA

int poscompra;
    poscompra = fopen("poscompra.txt", "rt");
if (poscompra != NULL){
    printf("\n\t Arquivo aberto com sucesso para leitura");
}else{
poscompra = fopen ("poscompra.txt", "wt");
if (poscompra != NULL){
    printf("\nArquivo criado com sucesso\n");
}
    }
    
    char posproduto[30];
    char chegouok[5];
    int data;
    printf("\nNome do produto comprado\n");
    scanf("\n%s", posproduto);
    printf("\nA quantidade de produtos chegou toda?\n");
    scanf("\n%s", chegouok);
    printf("\nData que o produto chegou\n");
    scanf("\n%d", data);
}
int distribuir(){//DISTRIBUIÇÃO ENTRE AS FILIAIS

int distribuir;
    distribuir = fopen("distribuir.txt", "rt");
if (distribuir != NULL){
    printf("\n\t Arquivo aberto com sucesso para leitura");
}else{
distribuir = fopen ("distribuir.txt", "wt");
if (distribuir != NULL){
    printf("\nArquivo criado com sucesso\n");
}
    }
    
    char nomeprodudistrubuir[30];
    int quantprodfilial[30];
    char nomefilial[30];
    printf("\nNome do produto\n");
    scanf("\n%s", nomeprodudistrubuir);
    printf("\nQuantidade de produto que ira para a filial(UNIDADES)\n");
    scanf("\n%d", quantprodfilial);
    printf("\nPara qual filial ira o produto\n");
    scanf("\n%s", nomefilial);
}
int editarProd(){
    //CRIAR O CODIGO
}
int excluirProd(){
    //CRIAR O CODIGO
}
int MostrarProdCadastrado(){
    //CRIAR O CODIGO
}
int Login(){
    //CRIAR CODIGO
}
//falta ainda armazenar os dados no Bloco de Notas.

Eu estou criando um arquivo para salvar as informações no bloco de notas. Estou criando um arquivo para quando eu clicar 1/2/3 ele abra outro arquivo para eu escrever algo dentro

Então, eu nao estou conseguindo resolver este algoritmo, quando eu clico (1) pra ele entrar na parte de cadastrar o produto, quando tento escrever algo ele simplesmente para o programa.
Eu acho tenho certeza que é algo relacionado ao Fwrite que eu usei, nao sei se estou usando certo. 

Se alguem puder me ajudar eu ficaria muito grato.
PS: O programa esta bem no inicio.

  • Curtir 1
  • Solução
Postado

@IamDex     esse código é em c  ou c++ , pois o que tem de c++ nele são as duas barras de comentários ,  mas  com relação ao erro é porque os arquivos são ponteiros , então o tipo não pode ser int ,  coloque assim  :

FILE   *produto;

 

  • Curtir 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!