不同的产出而不是预期的产出

时间:2016-02-13 16:15:47

标签: c++ loops for-loop

你好我是一名高中生。最近我开始用c ++做一些编程。但是我坚持下面的例子。如果你们有人能帮助我,我将不胜感激。

#include<iostream>
using namespace std;

int main()
{

int j;

    for(int i=0;i<10;i++)
    {
        i=j;

    }
    cout<<j;


}

为什么输出:2686864

相反,我认为它应该是0123456789,因为循环从0开始。感谢您的任何建议。

4 个答案:

答案 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语句以获得你想要的输出。