data[i]); cin>>数据[i].con; } EXCEND=数据[i]。con数据[i]。全部; 而(超过>最大值){ maxindex=-1; 最大值=超过; 如果(最大值>0){ cout,c++,C++" /> data[i]); cin>>数据[i].con; } EXCEND=数据[i]。con数据[i]。全部; 而(超过>最大值){ maxindex=-1; 最大值=超过; 如果(最大值>0){ cout,c++,C++" />

如何将数据[i].int转换为VARABLE p>所以我对C++有点陌生,我现在在使用字符串。我想输入一些量,并相互比较,但是因为我把它们放在数组中的数据类型中,它不允许我做次循环,我不明白为什么 for (int i=0;i<N;i++) { cout << "Name"<< endl; cin >> data[i].name; cin >> data[i].all; cin >> data[i].con; } exceed = data[i].con-data[i].all; while (exceed > maxvalue){ maxindex = -1; maxvalue = exceed; if (maxvalue > 0){ cout << data[i].name; } for(int i=0;i>data[i]); cin>>数据[i].con; } EXCEND=数据[i]。con数据[i]。全部; 而(超过>最大值){ maxindex=-1; 最大值=超过; 如果(最大值>0){ cout

如何将数据[i].int转换为VARABLE p>所以我对C++有点陌生,我现在在使用字符串。我想输入一些量,并相互比较,但是因为我把它们放在数组中的数据类型中,它不允许我做次循环,我不明白为什么 for (int i=0;i<N;i++) { cout << "Name"<< endl; cin >> data[i].name; cin >> data[i].all; cin >> data[i].con; } exceed = data[i].con-data[i].all; while (exceed > maxvalue){ maxindex = -1; maxvalue = exceed; if (maxvalue > 0){ cout << data[i].name; } for(int i=0;i>data[i]); cin>>数据[i].con; } EXCEND=数据[i]。con数据[i]。全部; 而(超过>最大值){ maxindex=-1; 最大值=超过; 如果(最大值>0){ cout,c++,C++,如果不知道您的数据成员使用的是什么类型、结构或类,或者遇到了什么错误,就很难告诉您到底发生了什么。您也在for循环之外引用了i,所以这可能是您的问题 我重新创建了一个简短的程序,它似乎在用一个简单的结构执行您想要的操作。因为该结构将con和all定义为int类型,它们在输入时被转换,并且I不再在for循环之外被引用 #include <iostream> #include <string> struct dataType { std::string name;

如果不知道您的
数据
成员使用的是什么类型、结构或类,或者遇到了什么错误,就很难告诉您到底发生了什么。您也在for循环之外引用了
i
,所以这可能是您的问题

我重新创建了一个简短的程序,它似乎在用一个简单的结构执行您想要的操作。因为该结构将
con
all
定义为int类型,它们在输入时被转换,并且
I
不再在for循环之外被引用

#include <iostream>
#include <string>

struct dataType {
    std::string name;
    int all;
    int con;
};

int main() {
    int N = 2;
    int maxValue = 3;
    dataType data[N];

    for (int i = 0; i < N; ++i) {
        std::cout << "Name" << std::endl;
        std::cin >> data[i].name;
        std::cin >> data[i].all;
        std::cin >> data[i].con;

        int exceed = data[i].con - data[i].all;
        if (exceed > maxValue) {
            std::cout << data[i].name << std::endl;
        }
    }
}
请注意,stoi中的无效参数会引发异常,但作为初学者,您可能还没有学习异常处理(但一旦掌握了窍门,就应该学习)


希望这会有帮助,干杯。

请提供一个答案,并包括您遇到的所有错误。否则,就不可能给出一个有帮助的答案。我得到了错误:名称查找“i”更改为“ISO”,用于“作用域”。问题是代码的其余部分很好,我只想输入2个整数(“all”和“con”都是整数)我想和他们一起工作,但我对如何工作感到困惑。这个代码片段中唯一的
i
for
循环的一部分,所以如果你想在循环之外使用它,你需要在循环之外定义它。非常感谢你,所以基本上我以前需要std,这次它确实起作用了。不客气!在将来,提及which编译或运行时收到的错误,以便更容易跟踪问题。祝项目的其余部分好运!
int x;
std::string test = "4";
x = std::stoi(test);
std::cout << x << std::endl;