c++ 函数的参数太多[已关闭]

0wi1tuuw  于 11个月前  发布在  其他
关注(0)|答案(1)|浏览(119)

**已关闭。**此问题为not reproducible or was caused by typos。目前不接受回答。

这个问题是由错字或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
2天前关闭。
Improve this question
我得到这个错误在我的终端:太多的参数到函数'bool Verify(int, int)' .我认为这与函数有关,但我不能想出任何解决方案到目前为止.我有点新的c++,所以我希望我能得到一些指导来解决这个问题.
我的代码看起来像这样:

#include<iostream>
#include<cmath>
bool Verify(int number,int size);

int main()
{
    int number;
    std::cin>>number;
    int size= floor(log10(number))+1;
    int array[size];

    if(Verify(number,size,array)==true){
        std::cout<<"this number is verify";
    }else{
        std::cout<<"this number isn't verify";
    }
    return 0;
}
bool Verify(int number,int size,int array[])
{
    int sum=0;
    for(int i=0;i<size;i++){
    int digit=number%10;
    number=number/10;
    array[i]=digit;
    }

    for(int j=0;j<size;j+2){
        if(array[j]%2==1)
        {
            sum=sum+array[j];
        }else if(array[j]>4){
            sum=sum+2*array[j]-9;
        }else
        {
            sum=sum+2*array[j];
        }
        
    }
    if(sum%10==0){
        return true;
    }else{
        return false;
    }
}

字符串

ugmeyewa

ugmeyewa1#

你对Verify的声明和定义相互矛盾:
声明:

bool Verify(int number,int size);

字符串
定义:

bool Verify(int number,int size,int array[]) //...


修改声明以反映定义。
这不是问题的一部分:你在这里设置了一个无限循环:

for(int j=0;j<size;j+2)


j永远不会更新,所以j<size永远为true。

相关问题