我正在阅读linux内核的代码。 在drvier / of / fdt.c中,有如下函数。
const void * __init of_flat_dt_match_machine(const void *default_match,
const void * (*get_next_compat)(const char * const**))
{
const void *data = NULL;
const void *best_data = default_match;
const char *const *compat;
}
我对" compat"的价值有疑问。变量。 似乎compat将具有字符串的起始地址,这意味着dtb中的根节点。 这是我的问题,compat如何在没有初始化的情况下使数组像分配内存一样。
如果我的问题很奇怪或需要更多细节,请告诉我。