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
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