-4

我正在编写一个 C# 程序,我得到了这个错误”

错误 1 ​​当前上下文中不存在名称“inumber”

对于这条线

Console.WriteLine(iNumber + "/" + i + "=" + d);

查看代码,我不明白 innumber 是如何不存在的。我理解错误的含义,但是如果 iNumber 不存在,那么 try catch 就会失败,这意味着有错误的代码不会运行......

有人可以向我解释为什么 iNumber 不存在吗?

 try
            {
                iNumber = Convert.ToInt32(Console.ReadLine());


                for (int i = 1; i < iNumber; i++)
                {
                    decimal d;
                    d = iNumber / i;


                    if (((d % 1) == 0))
                    {
                        if (!NumberCount.Contains(d))
                        {
                            NumberCount.Add(d);
                            Console.WriteLine(iNumber + "/" + i + "=" + d);
                        }
                    }


                }

            }
catch
{
}
4

2 回答 2

3

这是一个编译器错误
您的代码根本没有运行。

catch块只处理运行时抛出的异常


正如错误明确指出的那样,您从未iNumber在任何地方声明过。

于 2013-06-19T21:42:56.260 回答
0

尝试改变这个:

iNumber = Convert.ToInt32(Console.ReadLine());

对此:

int iNumber = Convert.ToInt32(Console.ReadLine());

现在你表现得好像iNumber已经在某个地方宣布了一样。根据您向我们展示的代码,事实并非如此。

于 2013-06-19T21:42:23.737 回答