【发布时间】:2018-11-27 17:54:31
【问题描述】:
error: expected primary-expression before ']' token
calcNumbers(myArr[], type);
^
不知道这意味着什么。主要问题似乎在 11 点,但我认为我有更多。另外如何改进代码?我是否在某处或某处放置了指针,我应该以某种方式对其进行更多构造还是将其应用于工作?
#include <iostream>
void calcNumbers(int arr[] ,int type);
int askNumbers();
int askType();
int main()
{
int type = askType();
int myArr = askNumbers();
calcNumbers(myArr[], type);
}
int askType()
{
int type_ = 0;
std::cout << "1 for addition. 2 For subtraction. 3 for multiplication. 4 for division." << std::endl;
std::cin >> type_;
return type_;
}
int askNumbers()
{
int arr[] = {};
std::cout << "Enter as many numbers you'd like. Type 0 to stop." << std::endl;
int i = 0;
do
{
std::cin >> arr[i];
i++;
}
while(arr[i] != 0);
return arr[];
}
void calcNumbers(int arr[] , int _type)
{
int arrSize = (int)( sizeof(arr));
int totalNumber = 0;
for(int i = 0; i < arrSize; i++)
{
if (_type == 1)
totalNumber += arr[i];
else if (_type == 2)
totalNumber -= arr[i];
else if (_type == 3)
totalNumber *= arr[i];
else if (_type == 4)
totalNumber /= arr[i];
}
std::cout << totalNumber << std::endl;
}
提前感谢,我真的无法解决这个奇怪的问题......
【问题讨论】:
-
你希望
calcNumbers(myArr[], type);做什么? -
请只标记使用的语言。
-
请问这里的错误信息是什么?
-
错误信息在标题中
-
@Aspect 不,他们不是。 C++ 起源于 C,但从那时起它们就分道扬镳了
标签: c++ type-conversion int