I am confused about a function dictCreate()
in file dict.c of redis
implementation. I am going to paste the code here:
/* Create a new hash table
* T = O(1)
*/
dict *dictCreate(dictType *type, void *privDataPtr) {
dict *d = zmalloc(sizeof(*d));
_dictInit(d, type, privDataPtr);
return d;
}
variable d
is used in zmalloc(sizeof(*d))
, but theoretically it will exist when this line was executed. So my question is how it is possible to use variable d
before it is declared?