首页 > 解决方案 > 即使我声明了一个参数,也缺少参数错误

问题描述

我做了一个程序它会导致错误

#include <iostream>
using namespace std;

struct numtag
{
    long num;
    char tag[60];
};

numtag *fibotag(long,long i=0,(numtag fibo[]){(numtag){0,"0"},(numtag){1,"1"}});

int main()
{
    unsigned long n;
    cout<<"Num: ";
    cin>>n;
    cout<<fibotag(n)[n-1].num;
};

numtag *fibotag(long n,long i,numtag fibo[])
{
    //some stuff
    return fibo;
}

我实际上声明了一个参数。

错误列表:

10  31  D:\c++\fibo demo.cpp    [Error] expected identifier before '(' token
10  46  D:\c++\fibo demo.cpp    [Error] expected ')' before '{' token
10  31  D:\c++\fibo demo.cpp    [Error] default argument missing for parameter 3 of 'numtag* fibotag(long int, long int, int (*)(numtag*))'
10  27  D:\c++\fibo demo.cpp    [Note] ...following parameter 2 which has a default argument
D:\c++\fibo demo.cpp    In function 'numtag* fibotag(long int, long int, int (*)(numtag*))':
10  78  D:\c++\fibo demo.cpp    [Error] expected ';' before '}' token
10  78  D:\c++\fibo demo.cpp    [Warning] no return statement in function returning non-void [-Wreturn-type]
D:\c++\fibo demo.cpp    At global scope:
10  79  D:\c++\fibo demo.cpp    [Error] expected unqualified-id before ')' token

它实际上是一个函数来创建一个具有第 n 个斐波那契数及其素数的结构

标签: c++

解决方案


推荐阅读