PDA

View Full Version : [C] undefined reference to '...'


Pano89
26-06-2011, 17:42
ciao a tutti, mi sto esercitando per un esame di informatica da un po di giorni utilizzando Codeblocks e progetti su pił file (main.c, funz.c e funz.h).
Non ho mai avuti problemi, ma oggi mi da sto errore qua:
undefined reference to 'funzionehash'
in un miniprogetto per iniziare a smanettare con le tabelle di hash.

Volevo solo provare a mettere una stringa nella funzione di hash e vedere cosa ne viene fuori :D

MAIN.C
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "funz.h"

int main()
{
char parola[10], *pParola;
long int indice;

printf("scrivere la parola: ");
scanf("%s", parola);
pParola=parola;

indice=funzionehash(pParola);
printf("%ld", indice);

return 0;
}

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

static unsigned long int funzionehash(const char *key) /* Bernstein */
{
unsigned long int h = 5381ul;
int t;
int len = strlen(key);

for (t = 0; t < len; t++)
h = ((h<<5) + h) + key[t];

return h;
}

FUNZ.H
static unsigned long int funzionehash(const char *);

sono un niubbo io vero?? :fagiano: do sta il problema?? :muro:
grazie

tuccio`
26-06-2011, 18:02
static rende la funzione visibile solo all'interno del file, togli static e bon

Pano89
26-06-2011, 18:05
che niubbo -.- non sapevo che servisse static
grazie!!