2017-02-15 101 views
-24

コンパイラでエラーが発生しました。CS0030: 'void'を 'double'に変換できません。お願い助けて。ここ コード:エラーCS0030: 'void'を 'double'に変換できません。

static public double Decode(string a) 
{ 
    double c=double.Parse(a); 
    return (double)Console.WriteLine(c%3); 
} 
+7

Console.Writelineに戻り値がありません。 – BugFinder

+2

コンパイラがあなたに伝えようとしているように、コードは意味をなさない。何を返すと思いますか? – SLaks

+0

は変数 "a"が空ですか?既にdouble型なので値を返すときにはdouble型にキャストする必要はありません – imsome1

答えて

3

機能を変更して、以下の例のように使用してください。

using System; 
public class Program 
{ 
    public static double Decode(string a) 
    {  
     return double.Parse(a); 
    } 

    public static void Main() 
    { 
     var decoded = Decode("2.1"); 

     Console.WriteLine(decoded); 
    }   
} 

OUTPUT:2.1

あなたはおよそDouble.TryParseを読んで、この機能を改善したい場合。

0

ます。Console.WriteLineは、戻り値はありませんので、コンパイラは、私が何を意味することだったと思う。これは間違いです。その右..

あなたを語っています。

static public double Decode(string a) 
{ 
    double c=double.Parse(a); 
    Console.WriteLine(c%3); 
    return c; 
} 
関連する問題