C++ 从';标准::ios_基地和;(*)(标准:ios#U base&;)&x27;至';int';[-fpermissive]
我已经实现了查找最大值和最小值的函数。但我得到以下错误代码: [错误]从'std::ios_base&(*)(std::ios_base&)'到'int'[-fppermissive]的转换无效C++ 从';标准::ios_基地和;(*)(标准:ios#U base&;)&x27;至';int';[-fpermissive],c++,C++,我已经实现了查找最大值和最小值的函数。但我得到以下错误代码: [错误]从'std::ios_base&(*)(std::ios_base&)'到'int'[-fppermissive]的转换无效 #include<iostream> using namespace std; int a[1000], n, maxDiff, maxValue, minValue; void nhap() { int i, n; cout <
#include<iostream>
using namespace std;
int a[1000], n, maxDiff, maxValue, minValue;
void nhap() {
int i, n;
cout << "Nhap n: ";
cin >> n;
for ( int i =1; i <= n; i ++) {
cout << "Nhap vao mang thu i: " << i << endl;
cin >> a[i];
}
}
void findmaxdiff(int left, int right, int maxDiff, int& maxValue, int& minValue) {
int mid;
int maxD1, maxV1, minV1;
int maxD2, maxV2, minV2;
if(left==right) {
maxDiff = 0;
maxValue = a[right];
minValue = a[right];
}
else {
mid = (left +right) / 2;
findmaxdiff(left, mid, maxD1, maxV1, minV1);
findmaxdiff(mid+1, right, maxD2, maxV2, minV2);
maxDiff = maxV2 - minV1;
if(maxDiff< maxD1) maxDiff = maxD1;
if(maxDiff< maxD2) maxDiff = maxD2;
if(maxV1> maxV2){
maxValue= maxV1;
}
else {
maxValue = maxV2;
}
if(minV1< minV2) {
minValue = minV1;
}
else {
minValue= minV2;
}
}
}
int main() {
nhap();
findmaxdiff(left, n, maxDiff, maxValue, minValue);
cout << maxDiff;
}
#包括
使用名称空间std;
int a[1000],n,maxDiff,maxValue,minValue;
void nhap(){
inti,n;
cout>n;
对于(int i=1;i变量left
定义缺失
不要通过使用名称空间std;
将std
名称空间扩展到全局名称空间,这样可以避免此类错误。您忘记声明变量left
和函数std::ios_base&left(std::ios_base&str);
来自名称空间std
缺少变量left
定义
不要通过使用名称空间std;
将std
名称空间扩展到全局名称空间,这样可以避免此类错误。您忘记声明变量left
和函数std::ios_base&left(std::ios_base&str);
来自名称空间std
你的“左”字声明在哪里?你的“左”字声明在哪里?编译器注释说这是函数的第一个参数的问题。我认为这只是一个熟悉编译器消息的问题。@Gamenotcore它说left
来自std
,这足以理解原因。是的,但问题的另一半在于理解compiler消息。但是,是的,正确的代码实践可以最大限度地减少出现问题的可能性。但是,如果您自己的作用域变量出错,在不导入std的情况下,同样的问题仍然会出现。编译器注释说这是函数的第一个参数的问题。我认为这只是熟悉wi的问题编译器消息。@Gamenotcore它说left
来自std
,这足以理解原因。这是真的,但问题的另一半在于理解编译器消息。但是,是的,正确的代码实践可以最大限度地减少出现问题的可能性。然而,同样的问题也可能仍然存在如果你自己的作用域变量出错,我会在不导入std的情况下出现。