Boa noite, estou fazendo um programa para meu curso e o programa deu erro ao ser compilado. Segue aí embaixo os arquivos:
introcomp_main.c
#include <stdio.h>
#include "banco.h"
int main(){
int n;
scanf("%d", &n);
Cliente clientes[n];
for(int i = 0; i < n; i++){
cadastraCliente(clientes, i);
}
float media = 0;
for(int i = 0; i < n; i++){
media+=saldoCliente(clientes, i);
imprimeSaldo(clientes, i);
}
printf("Media dos Salarios: %.2lf\n", media/(float)n);
return 0;
}
banco.h
#ifndef BANCO_H
#define BANCO_H
typedef struct {
char nome[51];
char cidade[51];
int conta;
double saldo;
}Cliente;
void cadastraCliente(Cliente clientes[],int i);
int saldoCliente(Cliente clientes[], int i);
void imprimeSaldo(Cliente clientes[],int i);
#endif
banco.c
#include <stdio.h>
#include "banco.h"
void cadastraClientes(Cliente clientes[], int i)
{
scanf("%d %s %*c %s %lf", &clientes[i].conta, clientes[i].nome, clientes[i].cidade, &clientes[i].saldo);
}
int saldoCliente(Cliente clientes[], int i)
{
int media=0;
media=clientes[i].saldo;
return media;
}
void imprimeSaldo(Cliente clientes[], int i)
{
{
printf("Cliente %s mora em %s e tem R$%lf na conta %d", clientes[i].nome, clientes[i].cidade, clientes[i].saldo, clientes[i].conta);
}
}
makefile
all: compila executa
compila:
gcc -c banco.c
gcc -c introcomp_main.c
gcc -o introcomp_main banco.o introcomp_main.o
executa:
./introcomp_main
limpa:
rm *.o
erro no terminal
gcc -c banco.c
gcc -c introcomp_main.c
gcc -o introcomp_main banco.o introcomp_main.o
introcomp_main.o:introcomp_main.c:(.text+0xc2): undefined reference to `cadastraCliente'
collect2.exe: error: ld returned 1 exit status
make: *** [compila] Error 1
Alguém poderia dar um help aí? Obs: não estudamos ponteiros ainda, então por precaução tentem fazer de tudo pra não usar..
obrigado!