我很难在方法签名中正确定义返回类型。问题是list* GetPrimeNumbers()

struct dynamicArray{
   int val;
   struct dynamicArray * next;
};

typedef struct dynamicArray list;

int PrimeFactor()
{
    int sum = 0;
    list * primeNumbers;
    primeNumbers = GetPrimeNumbers();
    return sum;
}

list* GetPrimeNumbers()
{
    int max = 100;

    list * current, * head;
    head = NULL;

    for(int i = 2; i < max; i++)
    {
     //..implmenetation
    }
    return current;
}

我尝试过几种返回类型,但都没有成功。我是一个初级C级程序员。需要什么?

最佳答案

要么需要一个带有typedefGetPrimeNumbers原型的头文件,要么需要交换文件中的函数GetPrimeNumbersPrimeFactor
按照您呈现代码的方式,GetPrimeNumbers在编译PrimeFactor时没有声明。

09-11 17:21