int main() { int n; init(); addfirst(12); addlast(9); n=count(); afisare(); node_t *b=keyfind(4); if(b!=NULL) { printf("%d",b->k); } else{printf("Valoarea nu exista");} removekey(2); afisare(); printf("%d",count()); return 0; }
/* ** clear collected keys from weaktables */ static void cleartablekeys (lua_State *L, GCObject *l) { while (l) { Table *h = gcotoh(l); int i = sizenode(h); lua_assert(h->marked & KEYWEAK); while (i--) { Node *n = gnode(h, i); if (!valismarked(gkey(n))) /* key was collected? */ removekey(L, n); /* remove entry from table */ } l = h->gclist; } }
/* ** clear collected values from weaktables */ static void cleartablevalues (lua_State *L, GCObject *l) { while (l) { Table *h = gcotoh(l); int i = h->sizearray; lua_assert(h->marked & VALUEWEAK); while (i--) { TObject *o = &h->array[i]; if (!valismarked(o)) /* value was collected? */ setnilvalue(o); /* remove value */ } i = sizenode(h); while (i--) { Node *n = gnode(h, i); if (!valismarked(gval(n))) /* value was collected? */ removekey(L, n); /* remove entry from table */ } l = h->gclist; } }