int main() { int choice=0; int k,a,i; char nam[20]; struct node *temp; hashTable=initializeHT(BKT_NUM); struct hash*temp1; hashTable=(struct hash*)malloc(sizeof(struct hash)*BKT_NUM); for(i=0;i<BKT_NUM;i++) { hashTable[i].head=NULL; hashTable[i].count=0; } while(choice!=3) { printf("\n Enter Choice: "); scanf("%d",&choice); switch(choice) { case 1: printf("Enter the key:"); scanf("%d",&k); printf("Enter the name:"); scanf("%s",nam); printf("Enter the age:"); scanf("%d",&a); temp=createNode(k,nam,a); insert(temp); break; case 2: displayTable(hashTable); break; default: break; } } return 0; }
Symbols::Symbols(BCD* bcd_, int symbolBase_) : bcd(bcd_) { bcd = bcd_; file = bcd->file; symbolBase = symbolBase_; offsetBase = (symbolBase - ALTO_BIAS) * WORDS_PER_PAGE; file->position(offsetBase); versionIdent = file->getCARD16(); if (versionIdent != VersionID) { logger.fatal("versionIdent %d", versionIdent); logger.fatal("symbolBase %d", symbolBase); ERROR(); } version = Stamp::getInstance(bcd) ; creator = Stamp::getInstance(bcd) ; sourceVersion = Stamp::getInstance(bcd) ; logger.info("version %s", version->toString().toLocal8Bit().constData()); logger.info("creator %s", creator->toString().toLocal8Bit().constData()); logger.info("source %s", sourceVersion->toString().toLocal8Bit().constData()); CARD16 word = file->getCARD16(); definitionsFile = bitField(word, 15); logger.info("definitionFile %d", definitionsFile); directoryCtx = CTXIndex::getInstance(this, bitField(word, 1, 15)); logger.info("directoryCtx %s", directoryCtx->toString().toLocal8Bit().constData()); importCtx = CTXIndex::getInstance(this, file->getCARD16()); logger.info("importCtx %s", importCtx->toString().toLocal8Bit().constData()); outerCtx = CTXIndex::getInstance(this, file->getCARD16()); logger.info("outerCtx %s", outerCtx->toString().toLocal8Bit().constData()); hvBlock = BlockDescriptor::getInstance(bcd); logger.info("hvBlock %s", hvBlock->toString().toLocal8Bit().constData()); htBlock = BlockDescriptor::getInstance(bcd); logger.info("htBlock %s", htBlock->toString().toLocal8Bit().constData()); ssBlock = BlockDescriptor::getInstance(bcd); logger.info("ssBlock %s", ssBlock->toString().toLocal8Bit().constData()); outerPackBlock = BlockDescriptor::getInstance(bcd); // logger.info("outerPackBlock %s", outerPackBlock->toString().toLocal8Bit().constData()); innerPackBlock = BlockDescriptor::getInstance(bcd); // logger.info("innerPackBlock %s", innerPackBlock->toString().toLocal8Bit().constData()); constBlock = BlockDescriptor::getInstance(bcd); // logger.info("constBlock %s", constBlock->toString().toLocal8Bit().constData()); seBlock = BlockDescriptor::getInstance(bcd); logger.info("seBlock %s", seBlock->toString().toLocal8Bit().constData()); ctxBlock = BlockDescriptor::getInstance(bcd); logger.info("ctxBlock %s", ctxBlock->toString().toLocal8Bit().constData()); mdBlock = BlockDescriptor::getInstance(bcd); logger.info("mdBlock %s", mdBlock->toString().toLocal8Bit().constData()); bodyBlock = BlockDescriptor::getInstance(bcd); logger.info("bodyBlock %s", bodyBlock->toString().toLocal8Bit().constData()); extBlock = BlockDescriptor::getInstance(bcd); // logger.info("extBlock %s", extBlock->toString().toLocal8Bit().constData()); treeBlock = BlockDescriptor::getInstance(bcd); // logger.info("treeBlock %s", treeBlock->toString().toLocal8Bit().constData()); litBlock = BlockDescriptor::getInstance(bcd); // logger.info("litBlock %s", litBlock->toString().toLocal8Bit().constData()); sLitBlock = BlockDescriptor::getInstance(bcd); // logger.info("sLitBlock %s", sLitBlock->toString().toLocal8Bit().constData()); epMapBlock = BlockDescriptor::getInstance(bcd); // logger.info("epMapBlock %s", epMapBlock->toString().toLocal8Bit().constData()); spareBlock = BlockDescriptor::getInstance(bcd); // logger.info("spareBlock %s", spareBlock->toString().toLocal8Bit().constData()); fgRelPgBase = file->getCARD16(); // logger.info("fgRelPgBase %d", fgRelPgBase); fgPgCount = file->getCARD16(); // logger.info("fgPgCount %d", fgPgCount); // Read block initializeSS(ssBlock); initializeHT(htBlock); initializeMD(mdBlock); initializeCTX(ctxBlock); initializeSE(seBlock); initializeBT(bodyBlock); initializeLT(litBlock); initializeExt(extBlock); initializeTree(treeBlock); BTIndex::checkAll(); CTXIndex::checkAll(); ExtIndex::checkAll(); HTIndex::checkAll(); LTIndex::checkAll(); MDIndex::checkAll(); SEIndex::checkAll(); TreeIndex::checkAll(); };