运行时检查错误3以防万一

时间:2015-06-30 02:58:09

标签: c++ c

我有一半计算方法,除非我去一个数字/方格数字/显示奇数甚至没有输入数字,而不是简单地说“你没有输入数字”我得到一个运行检查错误#3然后是一个非常大的负数。这显然不是我想要发生的事情。

package com.ggl.testing;

import java.util.Scanner;

public class PETC {

    public static void main(String[] args) {
        PETC petc = new PETC();
        petc.pressEnterToContinue();
        System.out.println("Continued");
    }

    public void pressEnterToContinue() {
        String s = "Press enter to continue:";
        System.out.println(s);
        Scanner scanner = new Scanner(System.in);
        scanner.nextLine();
        scanner.close();
    }

}

3 个答案:

答案 0 :(得分:2)

GIGO又是垃圾中的垃圾。 (或更准确地说,#34;未定义的行为")

您从未设置number(因此它具有一些随机值),但您的if语句会检查number,就好像它的默认值为< 0.尝试设置number的默认设置,如下所示:int number = -1;

答案 1 :(得分:2)

C不会初始化变量,因此您必须这样做。如果您没有初始化,那么变量将等于内存位置的任何内容,因此它是不可预测的。在您的情况下,您应该使用负值初始化数字以强制首先输入数字。 int number = -1;

答案 2 :(得分:2)

设置数字的默认值,如-1或任何负数。那么你的代码就可以了。