C++ 未声明错误Nullptr
所以当我在学校编译时,nullptr错误没有出现,我想我可以在编译时添加一行来修复它,有没有其他方法来消除它,还有另外两个错误我根本不明白为什么我会得到它们。有人能至少解释一下nullptr错误吗 main.cpp:在函数“int main()”中: 错误:“数组”未在此范围内声明C++ 未声明错误Nullptr,c++,cmd,C++,Cmd,所以当我在学校编译时,nullptr错误没有出现,我想我可以在编译时添加一行来修复它,有没有其他方法来消除它,还有另外两个错误我根本不明白为什么我会得到它们。有人能至少解释一下nullptr错误吗 main.cpp:在函数“int main()”中: 错误:“数组”未在此范围内声明 int main() { float *studentData; int numStudents; int size; int average = getAverage(*ar
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;
}
错误:未在此作用域中声明“小时”
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;
}
错误:“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;
}
intmain()
{
浮动*学生数据;
国际学生;
整数大小;
int average=getAverage(*数组,*小时);
int中位数=Get中位数(小时);
int模式=getMode(小时);
女学生;
studentData=makeArray(numStudents);
if(studentData==nullptr)
cout在这一行:
int average = getAverage(*array, *hours);
您引用了数组
和小时数
,但是您尚未声明这些内容。代码的“学校版本”必须有所不同
R.null ptr> /c>错误:2011中添加到C++中。也许学校有最新的编译器,但在家里有一个较老的编译器。如果你把<代码> nulpPTR < /代码>改为<代码> 0 >代码>它会很好。< /p> 这行:
int average = getAverage(*array, *hours);
您引用了数组
和小时数
,但是您尚未声明这些内容。代码的“学校版本”必须有所不同
R.NulLPTR 错误:2011中添加到C++中。也许学校有最新的编译器,但在家里有一个较老的编译器。如果你把<代码> nulpPTR < /代码>改为<代码> 0 >代码>它就可以了。< /p> < p>最简单的方法是将null pTR改为0。虽然不是所有的时间都能工作。但是它可以是一个SM。全代码解决方案
在使用g++编译时,还可以使用-std=c++11参数。
因此,终端中的编译命令将是:
g++“您的文件”-std=c++11解决此问题的最简单方法是将nullptr更改为0。虽然不是所有时间都有效。但它可以是一个小代码解决方案
在使用g++编译时,还可以使用-std=c++11参数。
因此,终端中的编译命令将是:
g++“您的文件”-std=c++11应该声明的nullptr
在哪里?nullptr
是c++11中的一个关键字,谢谢@MattMcNabb@MattMcNabb我把它改为NULL而不是nullptr,这是正确的决定吗?是的,NULL
是一个扩展到0
的宏,所以它也可以工作(只要包含定义NULL
的标题).应该在哪里声明nullptr
?nullptr
是C++11neat中的一个关键字,谢谢@MattMcNabb@MattMcNabb我把它改为NULL而不是nullptr,这是正确的决定吗?是的,NULL
是一个扩展到0
的宏,所以它也可以工作(只要包含定义NULL
的标题)。它有不同的版本;请尝试g++-v
,并将输出与您在学校获得的结果进行比较。很好,将Nullptr更改为0,修复了该错误,但其他两个仍然存在。我有导致错误的行的唯一原因是可以在int main的底部使用一个变量cout,我是否可以再次调用该函数并删除所有的麻烦行?我不知道你的意思。你的代码显然期望array
和hours
成为东西。这有不同的版本;尝试g++-v
并将输出与你在学校得到的结果进行比较。很好,将Nullptr更改为0,修复了该错误,但其他两个仍然存在。这是我唯一的原因导致错误的行是在int main的底部有一个变量,我能不能再次调用该函数并删除一些行中的所有问题?我不知道你的意思。你的代码显然希望array
和hours
成为事实。