当前位置: 首页 > 知识库问答 >
问题:

为什么会出现“未确定局部变量的使用”的错误?[副本]

戚鸿福
2023-03-14

我不知道为什么console.writeLine()中的weekFee变量会出现红色错误“use of unasigned local variable'weekFee',其中我在three if statemenst中使用它。

   static void Main(string[] args)
    {
        Console.WriteLine("Enter Length:");
        int length = int.Parse(Console.ReadLine());
        Console.WriteLine("Enter Width:");
        int width = int.Parse(Console.ReadLine());

        int area = length * width;
        int weekFee;

        if(area < 400)
        {

            weekFee = 25;

        }
        else if (area >= 400 && area < 600)
        {

            weekFee = 35; 

        }
        else if (area >= 600)
        {

            weekFee = 50;

        }

        Console.WriteLine("The weekly fee is {0}", weekFee);
        
    }

共有2个答案

濮阳烨然
2023-03-14

此警告与if语句声明之前有关。局部变量未初始化。您必须手动初始化它们,它们没有默认值。

在使用它们之前,必须明确指定它们。默认情况下,Microsoft本来可以初始化本地变量,但他们选择不这样做,因为使用未分配的本地变量几乎肯定是一个bug。

能业
2023-03-14

在您的代码中没有其他内容,这意味着在不查看这些条件的情况下,我们可以得出结论,控制流可能没有输入其中的任何一个,在这种情况下,您的变量将保持未赋值。当然,如果我们确实查看了条件,我们可以用大脑发现这是不可能的,但是在这一点上要求编译器同样的要求可能有点太多了。如果你可以用一个else替换你最后的else-If,编译器应该不会抱怨。或者,在开始时使用虚拟值初始化变量。

 类似资料:
  • 我试图回答以下问题(leetcode链接): 给定二叉搜索树的根节点,返回值介于L和R(包括L和R)之间的所有节点的值之和。二叉搜索树保证具有唯一的值。 这是官方的解决方案: 它按预期工作,例如对于以下输入:,输出为。但是,如果我把它写成一个普通函数而没有class语句,为什么会有错误呢? 这是错误消息:第二段代码看起来几乎相同,但我无法解释为什么解决方案的面向对象风格可以工作,而我在将其作为普通

  • 当我试图从netbean部署我的web应用程序时,我得到以下错误: 那是什么?为什么我会犯这个错误? 以下是来自的代码片段: 以下是netbeans服务器设置中的快照:

  • 问题内容: 我什至不知道此代码即使能正常工作也不会做任何事情,但是我不知道该怎么做才能摆脱“从内部类引用的局部变量必须是最终的或实际上是最终的”错误消息,该错误消息在以“ fireballRight [i]”开头的三行中显示。 任何指导将不胜感激,谷歌似乎没有帮助我这一点。 问题答案: 您尚未显示所有代码,但我怀疑添加了以下内容: 在循环内使用而不是将其用作数组的索引应该可以修复错误。 另外,如@

  • 问题内容: 我正在大学学习基础知识,并且希望对Eclipse中的以下错误有所帮助:“对于类型ShopCLI,未定义方法getCost()”& 这是我的代码 问题答案: 方法是在订单类中定义的,而不是在类中定义的。所以你的代码: 应该改为

  • 错误:第 1 行的解析错误:函数搜索(sour ^ 期望“字符串”、“数字”、“空”、“真”、“假”、“{”、“[”,得到“未定义” 代码:

  • 我试图在循环中初始化数组C,但它给出了错误: C是类ipdata的数组,我已经声明了它,并试图在循环中初始化它。 有什么问题吗?它表示:无法访问cluster_anlysis类型的封闭实例。必须使用cluster_anlysis类型的封闭实例限定分配(例如,x.new A(),其中x是cluster_anlysis的实例)。

  • 我收到这样的类型错误:- 甚至我正在使用jdk版本:-java版本"1.7.0_55"OpenJDK运行时环境(IcedTea 2.4.7)(7u55-2.4.7-1ubuntu1)OpenJDK 64位服务器VM(构建24.51-b03,混合模式) 请有人帮助我,我应该在我的项目中使用这样的组件。

  • 我有一些问题与这段代码,角日志“未定义”时,我使用输入字段,它是一个基本的组件,但不能使它工作。 HTML模板: TS文件: 在Chrome的浏览器控制台中出现错误信息,当使用输入字段时,我在控制台中被记录为未定义字段。