So I am looking at this and the guy is continuously using
uint32_t *internalNodeNumKeys(void *node)
{
return (uint32_t *)(node + INTERNAL_NODE_NUM_KEYS_OFFSET);
}
*internalNodeNumKeys(root) = 1;
What does this do? Somewhere I remember him saying that because these functions return pointers they can be used as setters but what do they set?