1

我再次遇到了一个错误,我并不是要打扰任何人,但我在这段代码中遇到了错误:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Input_Program
{
    class Program
    {
       private static void Main()
        {

           char Y;
            char N;

           Console.WriteLine("Welcome to my bool program!");
           Console.WriteLine("Input a NON capital y or n when told to.");




            if(Y == 'y')
            {
                Console.WriteLine("Thank you,Please wait.....");
            }
        }
    }
}

谢谢你的回答!

4

4 回答 4

1

您的变量char Y在使用前未初始化。声明时尽量给一个默认值。

编辑似乎您希望用户输入一些内容,并将其分配给变量 Y。尝试:

Y = Console.ReadKey().KeyChar;
于 2011-03-23T03:14:35.660 回答
1
if(Y == 'y')

Y是一个没有分配任何东西的局部变量。因此,您在语句之前为其分配任何值if以进行任何比较。

Y = 'a';  // or some character 
于 2011-03-23T03:14:51.437 回答
1

您没有将 Y 设置为任何内容,也没有从键盘读取任何内容。

于 2011-03-23T03:16:09.937 回答
1

您可以将其显式设置为 null。

char Y = '<whatever_is_the_default_char>';

那将摆脱编译器错误。

编译器错误的根本原因是,当它去编译分配给 Y 的 if 条件时,什么都没有。上面被认为是一个赋值。

于 2011-03-23T03:21:44.353 回答