我能够解决一些错误。现在我刚得到3。
1.控制到达}之前非空函数的结尾
void displayIntegerArray(int *arrayPtr,int arraySize)
函数。
2. delete[];
处的期望表达式。
3. return 0;
处的期望表达式。
#include <iostream>
#include <iomanip>
using namespace std;
// Function prototypes
void populateIntegerArray(int *arrayPtr, int arraySize);
void displayIntegerArray(int *arrayPtr, int arraySize);
void findMaximumInteger(int *arrayPtr, int arraySize);
//method to populate array
void populateIntegerArray(int *arrayPtr,int arraySize)
{
for(int i=0;i<arraySize;i++)
{
cout<<"Enter value for array element:"<<i<<":";
cin>>arrayPtr[i]; //reading value
}
}
void findMaximumInteger(int *arrayPtr,int arraySize)
{
int maximum = arrayPtr[0];
{
for(int i=0;i<arraySize;i++)
{
if(maximum<arrayPtr[i])maximum=arrayPtr[i];
}
cout<<"Maximum integer in array is: "<<maximum<<endl;
}
}
void displayIntegerArray(int *arrayPtr,int arraySize)
{
for(int i=0;i<arraySize;i++)
{
cout<<&arrayPtr[i]<<": arrayPtr["<<i<<"] = "<<setw(15)<<arrayPtr[i]<<endl;
}
}
int main()
{
int arraySize;
// Read array size
cout<<"Enter desired array size:";
cin>>arraySize;
// Print array
cout<<"arrayPtr = "<<arraySize<<endl;
populateIntegerArray( arrayPtr, arraySize);
displayIntegerArray(arrayPtr, arraySize);
findMaximumInteger( arrayPtr, arraySize);
cout<<"DELETING array at arrayPtr = "<<arrayPtr<<endl;
delete[];
return 0;
}
答案 0 :(得分:0)
在主要功能中:
有一个未声明的变量; rangedReduceSum
。
因此,您必须对其进行声明并为其动态分配内存。
arrayPtr
您还必须向int* arrPtr = new int[arraySize];
操作员提供delete []
,以释放分配的内存。
最后的主要功能将是这样:
arrayPtr
答案 1 :(得分:-2)
所以我的程序有些不正确的地方,但是主要是由于您没有在主目录中创建arrayPtr
。如果您不创建指向某个内存块的东西,那么您的程序将不会知道该数组在哪里。
https://www.cplusplus.com/doc/tutorial/pointers/
下一个问题是,因为您从未创建指向内存的指针,所以您也忘记为内存创建空间。如果每次程序运行时数组的大小都相同并且大小相当小,则可以只在堆栈上分配空间。但是,您不需要这样做,因此需要动态分配内存。这意味着您需要向操作系统询问内存,然后找回其位置。可以使用new[]
运算符来完成。然后,当您完成内存使用后,您便告诉程序使用delete[]
运算符对其进行取消分配。 (如果您不这样做,那么尽管程序结束,内存仍将被标记为已使用。这称为内存泄漏。)
https://www.cplusplus.com/doc/tutorial/dynamic/
接下来,您实际上将不会显示数组的位置。您要打印新的arrayPtr
变量以查看位置。
最后,您的帖子很难处理。格式有点不稳定,这使其很难阅读。幸运的是,您的程序非常简单,以至于无需花太多时间阅读并找出问题所在。但是,随着您的程序变得越来越复杂和庞大,许多人将不愿意浏览您的整个程序并为您查找错误。尝试缩小您认为错误来自何处并发布的范围:一些上下文,相关的代码块以及确切的错误消息。