#include unsigned int djb_hash(unsigned char* str) { unsigned int hash=0; int c; while(c=*str++) hash=(hash*33)^c; return hash; }; int main(int argc, char* argv[]) { char temp[256]; while(gets(temp)) { printf("%s 0x%x\n", temp, djb_hash((unsigned char*)temp)); } return 0; }