回复: 明明幾乎就照抄還是一直報錯,救命啊 到底哪裡有問題?
#11 [harold00124 10-27 11:28]
非常感謝各位大能的指導
小弟後來跟老闆請教,老闆叫我直接用else if就好叫我不要鑽牛角尖
現在碰到一些問題 在於除數為0的排錯問題
void MainWindow::on_pushButton_clicked()
{
double op;
int calcul =ui->comboBox->currentIndex();
if(calcul==3 && ui->spinBox_2==0 ){
QMessageBox::information(this,"錯誤","除數請勿為0");
}
else if(calcul==0){
op=ui->spinBox->value()+ui->spinBox_2->value();
ui->lineEdit->setText(QString::number(op));
}
else if(calcul==1){
op=ui->spinBox->value()-ui->spinBox_2->value();
ui->lineEdit->setText(QString::number(op));
}
else if(calcul==2)
{
op=ui->spinBox->value()*ui->spinBox_2->value();
ui->lineEdit->setText(QString::number(op));
}
else if(calcul==3)
{
op=ui->spinBox->value()/ui->spinBox_2->value();
ui->lineEdit->setText(QString::number(op));
}
}
很神奇的是我正常做四則運算的時候程式都能正常執行
但是當我刻意把除數為0的時候 排錯程序卻沒發揮作用 而是直接出錯關閉程序
整個人都被搞迷糊了 最先前面的if都沒通過怎麼可能會跑到下面的運算式那邊....
#12 [harold00124 10-27 11:31]
喔靠 發文之後才發現自己的問題
calcul==3 && ui->spinBox_2->value()==0
忘了+value拉 我真笨