【问题标题】:C++ - Infinite ouput to consoleC++ - 无限输出到控制台
【发布时间】:2023-03-03 10:28:01
【问题描述】:

自从我开始学习 C++ 以来,无论是 IDE Eclipse CDT 还是 C++ 本身,我都有点小问题。 好吧,更具体地说... 当我使用终止按钮停止程序时会出现此问题。 发生了什么?当我编译并运行这两个代码时:

int main(){
    char operace;
    short int stavba = 0;
    short int vstup;
    cout<<"Vítá vás kalkulačka pro pány teoretiky.";
    cout<<endl<<"Udejte výchozí matamatickou operaci pro celý číselný výraz:";
    cin>>operace;
    for(short int zadani = 0;vstup != 0;zadani++){
        cout<<"Vložte "<<zadani<<". číselný výraz:"<<endl;
        cin>>vstup;
        if(operace == '+'){
            stavba+= vstup;
        }
        else if(operace == '-'){
            stavba -= vstup;
        }
        else if(operace == '*'){
            stavba *= vstup;
        }
        else{
            stavba /= vstup;
        }
    }
    cout<<"Výsledek činí: "<<stavba;
    return 0;
}

... Eclipse 控制台的输出如下所示:

Vítá vás kalkulačka pro pány teoretiky.
Udejte výchozí matamatickou operaci pro celý číselný výraz:+
Vložte 0. číselný výraz:
5

Vložte 1. číselný výraz:
1
Vložte 2. číselný výraz:
0
Výsledek činí: 6

没有问题 - 预期的行为。 但是现在,当我通过 Terminate 按钮终止 App 时(当运行时在 for 循环内时):

Vítá vás kalkulačka pro pány teoretiky.
Udejte výchozí matamatickou operaci pro celý číselný výraz:Vložte 0. číselný výraz:
Vložte 1. číselný výraz:
Vložte 2. číselný výraz:
Vložte 3. číselný výraz:
Vložte 4. číselný výraz:
Vložte 5. číselný výraz:
Vložte 6. číselný výraz:
...

请注意,我不做任何输入。事实上,程序的行为是正常的,但我很困惑为什么会出现这种“审美错误”。

你能解释一下吗?谢谢:-}。

【问题讨论】:

  • 请保持文化中立。在 stackoverflow 中有更糟糕的问题没有反对票(即使有赞成票)

标签: c++ eclipse runtime-error eclipse-cdt


【解决方案1】:

你有一个逻辑错误:'vstup' 没有被初始化,但它被设置在循环内。

【讨论】:

  • 感谢您的第一次帮助 :-}。即使这不能解决错误,您还是向我解释了另一个错误-语法错误-非常好:-}。
猜你喜欢
  • 2016-07-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-09
  • 1970-01-01
相关资源
最近更新 更多