如何解决此错误“'int'之前的预期主表达式”?

时间:2020-05-12 08:11:15

标签: c++

我是c ++的新手程序员,获得了计算机科学学位。我的任务有问题。

您需要创建一个函数char calculate_daily_sale(int [])
您需要在main()函数中定义并读取一个长度为10的整数值数组。
编写一个函数charcalculate_daily_sale (int []),该函数接受来自main()函数的数组作为参数。该函数将求和数组的值。如果值大于或等于15,000, 函数将“ y”返回主函数,否则从函数返回“ n”。

这是我设法编写的代码:

#include <iostream>

using namespace std;

char calculate_daily_sale(int[])
{
    int arr[10];
    int *ptr[10];
    int sum=0;
    for(int j=0; j<=9; j++)
    {
        ptr[j]=&arr[j];
        sum=sum+arr[j];
        cout<<sum;
    }
}

int main()
{
    int n,y;
    int arr[10];
    int *ptr[10];
    for(int i=0; i<=9; i++)
    {
        ptr[i]=&arr[i];
        cin>>*ptr[i];
    }
    if(calculate_daily_sale(int[])>=15000)
    {
        return y;
    }
    else
    {
        return n;
    }
       return 0;
}

我得到的错误是:

'int'之前的预期主要表达式

2 个答案:

答案 0 :(得分:2)

您需要退后一步,学习C ++编程的基础知识。

您应该注意的几点是:

char calculate_daily_sale(int[])

该函数的返回类型为'char',因此需要一个return语句。 函数参数未命名且未使用。可以将其完全删除。

if(calculate_daily_sale(int[])>=15000)

在调用函数时,您需要传递一个值,而不是类型'int[]' 返回类型为char,因此将其与15000进行比较似乎很奇怪。

return yreturn n

ny未初始化。

main返回的值只是返回到运行程序的操作系统的错误代码。无论它们是什么,您似乎都不希望返回这些数字。我对规范的了解是,您需要从'n'和返回字符'y'calculate_daily_sale(表示“是”和“否”)。 to main,这就是返回类型为char的原因。

答案 1 :(得分:0)

错误消息总是提及行号。这是您可以精确定位错误的方法。假设您的错误在这一行

kind: Ingress
metadata:
  name: abc-ingress
  namespace: abc
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/rewrite-target: /$1
    nginx.ingress.kubernetes.io/use-regex: "true"
spec:
  rules:
  - http:
      paths:
      - backend:
          serviceName: fbmdashboardpoc-service
          servicePort: 80
        path: /abc/(.*)

您可能打算将数组arr传递给 if(calculate_daily_sale(int[])>=15000)

calculate_daily_sale
相关问题