我最近遇到了下面的代碼:使用靜態數組的初始化恆定結構對象
static const struct gaih gaih[] = {
#if defined __UCLIBC_HAS_IPV6__
{ PF_INET6, gaih_inet },
#endif
{ PF_INET, gaih_inet },
#if 0
{ PF_LOCAL, gaih_local },
#endif
{ PF_UNSPEC, NULL }
};
struct gaih {
int family;
int (*gaih)(const char *name, const struct gaih_service *service,
const struct addrinfo *req, struct addrinfo **pai);
};
int func{
const struct gaih *g = gaih;
}
我理解的常數和靜態的含義。 但我能夠以這種粗糙的方式破譯常量對象的靜態初始化背後的邏輯。 請澄清這樣做的原因或使用
這是什麼語言?如果這是C或C++,則應使用正確的語法。 – NathanOliver
它是用於獲取網絡中主機地址的C代碼 – achoora
這不是合法代碼。向我們顯示正確的代碼。 – Simple