从int32转换为字符串时出错

时间:2016-09-30 14:59:14

标签: c# string

这是我的代码:

bool Wert;
Int32 Zahl1 = 7;
Int32 Zahl2 = 4;
Int32 Rechnung = Zahl1 + Zahl2;
Console.WriteLine("Rechnung =");
Convert.ToInt32(Console.WriteLine(Zahl1, Zahl2));
Console.WriteLine("Geben sie die Lösung ein");
Int32 Ergebniss = Convert.ToInt32(Console.ReadLine());

if (Rechnung== Ergebniss)
  {
     Wert = true;
     if (Wert == true)
     {
       Console.WriteLine("Richtig");
     }

  }
else
  {
    Wert = false;
    if (Wert == false)
    {
       Console.WriteLine("Falsch");
    }
 }

 Console.ReadLine();

我收到此错误: CS1503 C#参数1:无法从'int'转换为'string'

我该如何解决这个问题? 我真的很喜欢编程并尝试使用它。抱歉英文不好

2 个答案:

答案 0 :(得分:2)

我认为您的问题来自

Convert.ToInt32(Console.WriteLine(Zahl1, Zahl2));

这条线应该做什么?  因为变量Zahl1Zahl2都是整数,但函数Console.WriteLine()应该传递一个字符串,而不是一对整数。 (这就是我认为导致你的错误的原因。)

此外,WriteLine()方法返回void因此,您没有将任何内容传递给要转换的ConvertToInt32()方法。

答案 1 :(得分:0)

我并不完全确定Convert.ToInt32(Console.WriteLine(Zahl1,Zahl2));应该做的。你想答案是74还是11?

Int32 Zahl1 = 7;
Int32 Zahl2 = 4;
Int32 Rechnung = Zahl1 + Zahl2;
Console.WriteLine("Rechnung = {0}", Rechnung);

// If you want the answer to be 74
Int32 losung = Convert.ToInt32(Zahl1 + Zahl2);

// If you want the answer to be 11
Int32 losung = Rechnung;

Console.WriteLine("Geben sie die Lösung ein {0}", losung);
Int32 Ergebniss = Convert.ToInt32(Console.ReadLine());

if (Rechnung == Ergebniss)
    Console.WriteLine("Richtig");
else
    Console.WriteLine("Falsch");
Console.ReadLine();