终端没有读取for循环语句

时间:2016-12-17 06:55:23

标签: c++

我在执行代码时多次失败,我认为我的逻辑是如何使用循环语句,但是当我尝试这段代码时:

int main(){
    cout << "yo \n";
    for(int i; i < 5; i++){
        cout << "meh \n";
    }
}

我期待输出:

    yo
    meh
    meh
    meh
    meh
    meh

但令我失望的是,它只显示了

    yo

那么,这个简单的代码块有什么问题?

3 个答案:

答案 0 :(得分:3)

因为i未初始化。初始化i值,如

for(int i = 0; i < 5; i++)

uninitialized变量用于保存垃圾数据。因此,这是未定义的行为

答案 1 :(得分:1)

它失败多次,因为使用未初始化的变量i是未定义的行为。在这种情况下,任何事情都可能发生。

答案 2 :(得分:0)

初始化 i 的值。 i ++ 正在尝试增加未初始化的变量。