У меня есть массив указателей на структуру. Могу ли я инициализировать их все в NULL, как показано ниже ??
struct hash { int bid; struct hash *prev,*next,*fl,*fr; }; struct hash *h[4]={NULL,NULL,NULL,NULL};
одного NULL (или одного 0) будет достаточно, поскольку 0 преобразуется в NULL при назначении указателям
struct hash *h[4] = {0};
дополнительная информация: первый элемент будет инициализирован первым предоставленным значением. остальные получат 0 по стандартам. какая часть, раздел стандартов? я понятия не имею, но вы можете найти это где-то в стандартах.
Вы также можете использовать
struct hash *h[]={0,0,0,0};
Да!
T *t[] = {NULL, NULL};
Работает для каждого T.
T
Я думаю, что это будет работать
int main() { struct hash { int bid; struct hash *prev,*next,*fl,*fr; }; struct hash *h[5]={0};