"隐式类型变量必须初始化"

时间:2016-11-22 23:39:39

标签: c#

enter image description here

我刚开始用c#学习经验,这个问题一直在取笑我。请帮助:)

5 个答案:

答案 0 :(得分:2)

查看附加的图像,错误在第16行。您写道:

var userAge = userAge = Console.ReadLine();

应该是:

var userAge = Console.ReadLine();

正如人们在评论中正确指出的那样,Console.ReadLine()将返回string类型的内容。但是在if语句中,您尝试将其与int类型的内容进行比较(例如if (userAge >= 18)。您需要手动将userAge转换为int 1}}像这样:

if (int.Parse(userAge) >= 18)

答案 1 :(得分:1)

您需要使用int.TryParse才能安全,否则错误的输入会引发错误。

string userAgeInput = Console.Readline();
int userAge = 0;

if (!int.TryParse(userAgeInput, out userAge))
    Console.WriteLine("Please input a valid age!");

现在您可以比较userAge

if (userAge >= 18)

答案 2 :(得分:1)

http://imgur.com/a/8gZgN

感谢大家!在我学习#34; C系列中的任何编程语言的第一天制作了我的第一个完成的简单控制台应用程序"

答案 3 :(得分:0)

请注意“var userAge = userAge = Console ...”中userAge下的波浪线?

不需要第二个userAge。

答案 4 :(得分:0)

在你的行上:

var userAge = userAge = Console.Readline();

您要将新变量userAge设置为等于尚未定义的先前定义的userAge