所以当我在学校编译它时,nullptr错误不会出现,我认为我可以通过添加一行来修复它,当我编译它,是否有另一种方法来摆脱它,另外两个错误,我不明白为什么我得到他们都没有.有人能解释至少nullptr错误吗?
main.cpp:在函数'int main()'中:
错误:此范围内未声明'array'
错误:此范围内未声明"小时"
错误:未在此范围内声明'nullptr'
int main()
{
float *studentData;
int numStudents;
int size;
int average = getAverage(*array, *hours);
int median = getMedian(hours);
int mode = getMode(hours);
cout << "How many students were surveyed? ";
cin >> numStudents;
studentData = makeArray(numStudents);
if (studentData == nullptr)
cout << "Error allocating memory.";
else
{
getFBData(studentData, numStudents);
selectionSort(studentData, numStudents);
for (int i = 0; i < numStudents; i++)
cout << *(studentData + i) << endl;
delete[] studentData;
}
getAverage(*array, hours);
printArray(size, hours);
getMedian(*array, hours);
getMode(*array, hours);
cout << "STATISTICS " << endl;
cout << "\n Mean: " << average;
cout << "\n Median: " << median;
cout << "\n Mode: " << mode;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
在这一行:
int average = getAverage(*array, *hours);
Run Code Online (Sandbox Code Playgroud)
你指的array和hours,但是你还没有宣布这些事情呢.代码的"学校版"必须是不同的.
回覆.的nullptr错误:那是在2011年加入到C++也许学校有上最新的编译器,但你在家里有一个较旧的编译器.如果您更改nullptr到0会被罚款.