-1
我有以下结构:结构构件中未找到
typedef struct vertex_tag{
int visited = 0;
int weight = FLT_MAX;
int prev;
}vertex_t;
它具有三个部件,如上所述。
我malloc的顶点是这样的:
vertex_t * vertex[G->vertices];
for(i=0; i < G->vertices; i++)
{
vertex[i] = (vertex_t*)malloc(sizeof(vertex_t));
}
所以我创建一个从结构的矩阵。然后我打电话给他们在整个我这样创建的函数:
vertex[i]->visited
vertex[i]->weight
vertex[i]->prev
我不断收到以下错误:
error: ‘vertex_t’ has no member named ‘visited’
error: ‘vertex_t’ has no member named ‘weight’
error: ‘vertex_t’ has no member named ‘prev’
谁能帮我明白为什么我不能这样做呢?
这结构定义是无效的;成员不能像那样初始化。 –
所以我不能让它们等于0和FLT_MAX? – user081608
@ user081608:你可以,但只有在以后当你实际创建'vertex_t'时:'vertex_t v; v.visited = 0; v.weight = INT_MAX;' – Zeta