为了账号安全,请及时绑定邮箱和手机立即绑定

错误:cs0131 赋值的左侧必须是变量、属性或索引器

错误:cs0131 赋值的左侧必须是变量、属性或索引器

C#
慕码人8056858 2021-11-21 18:09:00
我尝试进行文本冒险,但在到达“if”部分时出现错误。我让它工作了一次,但不像我想要的那样。我稍微改变了一下,然后放弃并转到原始脚本,但它不像上次那样工作,而是给了我这个错误:cs0131 赋值的左侧必须是变量、属性或索引器这是我的代码:Console.WriteLine("What's your name");string name = Console.ReadLine();Console.Write("Hello " + name);Console.WriteLine(" do you like games?");Console.WriteLine("yes or no");string yes = Console.ReadLine();string no = Console.ReadLine();if (Console.ReadKey() = yes) { Console.WriteLine("Great!, Lets play one"); }//the error is at "if (console.readkey()"
查看完整描述

2 回答

?
慕斯709654

TA贡献1840条经验 获得超5个赞

在 C# 和许多语言中,将变量赋值为一个值和测试是否相等是有区别的。

在 C#=中用于赋值。int x = 1;将创建一个值为 的变量1

== 用于测试一个值,所以你会写 if (x == 100) { /* something */ }



查看完整回答
反对 回复 2021-11-21
?
三国纷争

TA贡献1804条经验 获得超7个赞

继续你当前的代码,你可能应该有更多这样的东西:


Console.WriteLine("yes or no");

string answer = Console.ReadLine();


if (answer == "yes") { Console.WriteLine("Great!, Lets play one"); }

主要区别是:


您正在阅读用户在询问是或否后输入的答案,但是在您的代码中,您正在尝试重新阅读另一个答案。这不太合理。控制台将挂起,直到用户输入另一个响应。


正如 JamesFaix 所说,Console.ReadKey()在您询问他们是否想玩之后,您尝试为用户首先响应的任何内容分配一个值。相反,您应该检查用户的回复是否是肯定的回复。


查看完整回答
反对 回复 2021-11-21
  • 2 回答
  • 0 关注
  • 810 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信