你好我是一名高中生。最近我开始用c ++做一些编程。但是我坚持下面的例子。如果你们有人能帮助我,我将不胜感激。
#include<iostream>
using namespace std;
int main()
{
int j;
for(int i=0;i<10;i++)
{
i=j;
}
cout<<j;
}
为什么输出:2686864
?
相反,我认为它应该是0123456789
,因为循环从0开始。感谢您的任何建议。
答案 0 :(得分:3)
你想要做的可能就是:
export DYLD_FALLBACK_LIBRARY_PATH=/Library/PostgreSQL/9.5/lib:$DYLD_FALLBACK_LIBRARY_PATH
当然,你根本不需要变量j;你可以简单地输出我
答案 1 :(得分:2)
您尚未在声明中为j
分配值。在你的循环中,分配始终为i
,因为等号的顺序,实际上你总是从循环外部向i
分配j
未初始化的值j
。所以i
仍然处于最初设定的看似疯狂的价值。
如果要查看更改,您希望在循环内将j
的值分配给j
,即反转相等性。另外,如果要查看多个输出,则需要在for循环中移动print语句。
您看到的输出不是多个打印语句的输出 - 它是自动分配给Call.update({_id: data.call._id}, { $set: { approved: value }}, function (error, response) {
console.log(error);
console.log(response);
if (error) {
callback(error, null);
} else {
callback(null, response);
}
});
初始值的单个数字,因为您在声明它时没有给它一个值。最好的祝愿。
答案 2 :(得分:1)
首先,变量“j”未初始化。然后将循环变量设置为j的值。
看起来你正在尝试构建一个字符串“0123456789”,在这种情况下,你需要使j成为一个字符串,并将每个数字的字符连接到循环中字符串的结尾。
答案 3 :(得分:0)
在循环中,你循环而我&lt; 10,我从0开始。如果你想设置j = i,那么你需要切换变量的顺序,因为如果不是,它可能会搞乱循环,但不一定是在这种情况下。
此外,您应该将j初始化为某个值,因为如果不是,您将获得垃圾值。
它也不会按照你想要的方式输出它。你应该在for循环中移动cout语句以获得你想要的输出。