C - 在'{'标记之前的预期表达式

yuk*_*kon 0 c

任何人都可以请指出我为什么syntax error: expected expression before '{' token进入

T[SIZE] = {NULL}; 
Run Code Online (Sandbox Code Playgroud)

在下面的代码段?谢谢.

typedef struct SetObject{
    int key;
    struct SetObject *prev;
    struct SetObject *next;
} Node;

Node *T[SIZE]; //global variable

void initT(void) {
    T[SIZE] = {NULL};
}
Run Code Online (Sandbox Code Playgroud)

Gre*_*ill 5

要将指针值分配给数组元素,请使用:

T[SIZE] = NULL;
Run Code Online (Sandbox Code Playgroud)

NULL不需要左右的花括号.

第二个问题是,SIZE是一种无效索引到T阵列.有效索引的范围从0直到SIZE-1.分配T[SIZE]将导致未定义的行为.