很抱歉,如果这个问题过于简单。我只是很沮丧。
编译时,收到以下错误:

sll.c:129: error: incompatible types in return

下面是我在文件顶部的结构定义,可能需要了解发生错误的函数:
struct string_linked_list {
   char *s;
   struct string_linked_list *next;
};

typedef struct string_linked_list SLL;

这是返回错误的函数。我编写这个函数只是为了构建一个用于测试的单例列表。
SLL makeSingleton()
{
    SLL * new= (SLL *) malloc( sizeof(SLL));
    char*sp = strdup("test");
    new->s = sp;
    new->next = NULL;
    return new;
}

你知道问题出在哪里吗?

最佳答案

函数的隐式返回类型为int,而您返回的是sll*
也尽量避免将变量命名为“new”

09-25 20:54