• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

capzulu

erro estupido

2 mensagens neste tópico

boas,

eu tenho um ficheiro header, chamado estruturas.h que contém o seguinte código

#ifndef ESTRUTURAS_H
#define ESTRUTURAS_H

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

void acesso_ler(conta *vec_contas, char *nome_file);
void acesso_escrever(char *nome_file);

typedef struct CONTA conta;

struct CONTA
{
char nome[50];
char login[8];
char password[8];
int bi;
int codigo;
int saldo;
int estado;
};

#endif

num outro ficheiro chamado acesso_f.c tenho a seguinte funcao

void acesso_ler(conta *vec_contas, char *nome_file)
{
int f,h;
conta aux;

//f=open(nome_file,O_CREAT,0644);
f=open(nome_file,O_RDONLY,0);

while(h=read(f,&aux,sizeof(contas))>0)
  {
   vec_contas[i]=aux;
   i++;
  }

na funcao main que está contida noutro ficheiro *.c

tenho declarado

conta vec_contas[99];

e tenho a seguinte chamada

acesso_ler(vec_contas,argv[1]);

nos 2 ficheiros *.c tenho o #include "estruturas.h"

a compilar da o seguinte "erro estupido"

estruturas.h:11: error: expected ‘)’ before ‘*’ token

porque é que o "gajo" se queixa se eu defini a funcao com 2 argumentos?

tou a tentar arranjar maneira de passar um array de estrutura como argumento.

Agradecia que alguem me ajudasse

Cumprimentos

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

uma coisa q não sei se está mal... n mexo em C á bué...

na função não devia ter um array de contas e não um conta como parâmetro?

o parâmetro é um apontador pra conta e estás-lhe a passar um array de contas  :hmm:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora