Bem, estou fazendo um trabalho para a faculadade mas em umas das funções que criei usei um struct, que já tinha usado em outras funções mas ele da syntax error e não renho a minima ideia do porque.
consultas.c
#include "funcoes.h"
void consulta_vendas(char *vendas, char *auxiliar)
{
FILE *a, *v;
vendas venda;
int dia, mes, ano;
char diac[3], mesc[3], anoc[6];
int dia2, mes2, ano2;
char dia2c[3], mes2c[3], ano2c[6];
int contv, x;
float vtotal;
clrscr();
v = fopen(vendas, "rb");
verif_ab(v);
a = fopen(auxiliar, "rb");
verif_ab(a);
fseek(a, sizeof(int) * 2, SEEK_SET);
fread(&contv, sizeof(int), 1, a);
printf("\t\t************ CONSULTA DE VENDAS ************\n\n\n\n\n");
printf("Digite o periodo a ser consultado: (DD/MM/AAAA)\n");
printf(" / / a / / \n");
enter_data(1, 7, diac, mesc, anoc);
dia = atoi(diac);
mes = atoi(mesc);
ano = atoi(anoc);
enter_data(14, 7, dia2c, mes2c, ano2c);
dia2 = atoi(dia2c);
mes2 = atoi(mes2c);
ano2 = atoi(ano2c);
clrscr();
printf("Exibindo vendas feitas no periodo entre %d/%d/%d e %d/%d/%d:\n\n", dia, mes, ano, dia2, mes2, ano2);
vtotal = 0;
for(x=0; x<contv; x++)
{
fseek(v, sizeof(vendas)*x, SEEK_SET);
fread(&venda, sizeof(vendas), 1, v);
if(vendas.ano > ano && venda.ano < ano2)
{
if(venda.mes > mes && venda.mes < mes2)
{
if(venda.dia > dia && venda.dia < dia2)
{
printf("Nome: %s\n", venda.nome);
printf("Quantidade: %d\n", venda.quantidade);
printf("Valor Total: R%c%.2f\n\n", 36, venda.total_venda);
printf("Data da Compra: %d/%d/%d\n\n", venda.dia, venda.mes, venda.ano);
printf("**************************************************************************************\n\n");
vtotal += venda.total_venda;
}
}
}
}
printf("*********************************");
printf("* *");
printf("*********************************");
getch();
fclose(a);
fclose(v);
}
funcoes.h
#include <stdio.h>
#include <stdlib.h>
#include <conio2.h>
typedef struct cadastro
{
char nome[50];
int codigo;
float preço;
int estoque;
}cadastro;
typedef struct vendas
{
float total_venda;
int codigo;
int quantidade;
int dia, mes, ano;
char nome[50];
} vendas;
int exib(char *estoque, char *auxiliar);
void consulta_vendas(char *vendas, char *auxiliar);
void enter_data(int curx, int cury, char *dia, char *mes, char *ano);
void cadastro_produtos(char *estoque, char *auxiliar);
int del_produtos(char *estoque, char *auxiliar);
int menu(char *esc);
int menu_cadastro(char *esc);
int menu_consultas(char *esc);
int menu_consultas_estoque(char *esc);
void ordem(char *estoque, int cont);
int pesquisa_codigo(char *estoque, char *auxiliar);
void verif_arq(char *estoque, char *auxiliar, char *vendas);
int verif_ab(FILE *p);
void verif_cod(int cod, int cont, int *aux, char *estoque);
O erro é
6 J:\Faculdade\LTP\Trabalho LTP\consultas.c syntax error before "venda"
Acho que não é necessario postar as outras funções mas se quiserem.
Pergunta
FoToRiouS
Bem, estou fazendo um trabalho para a faculadade mas em umas das funções que criei usei um struct, que já tinha usado em outras funções mas ele da syntax error e não renho a minima ideia do porque.
consultas.c
funcoes.h O erro éAcho que não é necessario postar as outras funções mas se quiserem.
Agradeço a que puder ajuda.
Editado por FoToRiouSLink para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.