C# I';当我试图在if语句中分配布尔值时,我遇到了这个错误

C# I';当我试图在if语句中分配布尔值时,我遇到了这个错误,c#,C#,这不是我的代码示例,只是我问题的再现。我现在非常热衷于编码,所以这可能只是一个愚蠢的错误,但我仍然在这里发布这篇文章,以防万一我能得到答案 bool test; int num; num = Convert.ToInt32(Console.ReadKey()); if (num == 9) { test = true; } //Error on line below: "Use of unassigned local variable 'test' [error]csha

这不是我的代码示例,只是我问题的再现。我现在非常热衷于编码,所以这可能只是一个愚蠢的错误,但我仍然在这里发布这篇文章,以防万一我能得到答案

bool test;
int num;

num = Convert.ToInt32(Console.ReadKey());

if (num == 9) {
    test = true;
}

//Error on line below: "Use of unassigned local variable 'test' [error]csharp(CS0165)"
if (test == true) {
    Console.WriteLine("Random text");
}

我相信我会出错,因为我试图在if语句中分配变量,但我不知道如何修复它或至少删除if语句外的布尔赋值。

是的,您不能尝试比较没有值的布尔值。 默认情况下,您可以将测试变量指定为false,或者移动
Console.WriteLine(“随机文本”)