static void Main(string[] args)
      {
         int firstNumber, secondNumber, thirdNumber, fourthNumber;
         Console.WriteLine("Give me a number:");
         firstNumber = Convert.ToInt32(Console.ReadLine());
         Console.WriteLine("Give me another number:");
         secondNumber = Convert.ToInt32(Console.ReadLine());
         Console.WriteLine("Give me another number:");
         thirdNumber = Convert.ToInt32(Console.ReadLine());
         Console.WriteLine("Give me another number:");
         fourthNumber = Convert.ToInt32(Console.ReadLine());
         Console.WriteLine("The product of {0}, {1}, {2}, and {3} is {4}.",
                       firstNumber, secondNumber, thirdNumber, fourthNumber,
                       firstNumber * secondNumber * thirdNumber * fourthNumber);
      }
C#中看代码第四行,都说了输入一个数字,并且firstNumber, secondNumber, thirdNumber, fourthNumber都是定义的INT行,为什么firstNumber = Convert.ToInt32(Console.ReadLine());还要用这句代码把接受到的数字转换成int型呢,数字本来不就是int型的吗?

解决方案 »

  1.   

    将括号内的参数转为int32类型的值并返回此int32类型值 
      

  2.   

    Console.ReadLine()
    读出来的东西是String
    String到int没有隐式转换,因此要自己Convert.ToInt32
      

  3.   

    Console.Readline()的返回值好像是string类型的。string类型不能饮食转换成int型,因此要转换
      

  4.   

    貌似 Console.ReadLine() 是把获得的值保存在字符串变量中吧,所以要转换的!!
      

  5.   

    Console.ReadLine() 
    读出来的东西是String 
    String到int没有隐式转换,因此要自己Convert.ToInt32 
      

  6.   

    引用 3 楼 cppfaq 的回复:
    Console.ReadLine()
    读出来的东西是String
    String到int没有隐式转换,因此要自己Convert.ToInt32就这个
      

  7.   

    Console.ReadLine() 
    敲的时候有代码提示.
    看看这个方法的返回值是什么.
      

  8.   

    这句话不对...是不是字符串和C#毫无关系,原因是Console.ReadLine方法返回的是字符串,这是由该方法的定义决定的... 
      

  9.   

    就这样!
    Console.ReadLine()方法都是从键盘读入信息,将获得的数据保存在字符串变量之中.
      

  10.   

    READLINE读进来的默认是什么,你看一下
      

  11.   

    没错,上面都说到了,因为ReadLine()读出来的是string类型,无论你的Line里面写的是什么,一律按string来读出来。