我收到一条错误消息,提示以下代码“图形”的类型冲突,但我不确定问题是什么,因为图形是在任何地方使用之前声明的。有谁知道问题出在哪里吗?
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
#define __USE_BSD // make prototype for strdup visible
#include <string.h>
typedef struct linkedlist { // linked list of ints (for use in Node)
int index;
struct linkedlist *next;
} List;
typedef struct { // a Node of a Graph
char *name;
List *outlist; // adjacency list
int outdegree; // length of outlist
int indegree; // length of inlist
int dfsnum;
//double pagerank_score; //not needed for this exercise
} Node;
typedef struct {
int MaxSize;
Node *table;
} Graph;
// use to check result of strdup, malloc etc.
extern void check (void *memory, char *message);
extern int initialize_graph (Graph *mygraph, int MaxSize);
extern int insert_graph_node (Graph *mygraph, int n, char *name);
extern int insert_graph_link (Graph *mygraph, int source, int target);
extern int read_graph (Graph *mygraph, char *filename);
extern void print_graph (Graph *mygraph);
最佳答案
我不确定,但我认为 CDT MinGW 有一个扩展的 C 库,它已经保留了一个名为“Graph”的变量名称,您是否尝试过重命名您的结构?尽管我以前从未使用过 CDT MinGW,但情况可能是这样
关于 'Graph' 错误的冲突类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16252196/