Entwickler-Ecke
Basistechnologien - Math.Ceiling Fehler
highlander78 - Di 31.08.10 10:15
Titel: Math.Ceiling Fehler
Hallo
ich bekomme einen Fehler bei dieser Zeile :
C#-Quelltext
1:
| int Len16 = Convert.ToInt32(5 + ((Math.Ceiling((5 + p_Len) / 16)) * 16)); |
Der Aufruf unterscheidet nicht eindeutig zwischen folgenden Methoden und Eigenschaften: "System.Math.Ceiling(double)" und "System.Math.Ceiling(decimal)"
Hat jemand einen Tip für mich..
Gruss
danielf - Di 31.08.10 10:25
Hallo,
die Ceiling Methode ist überladen und bietet die Datentypen double und decimal an als Parameter an. (5 + p_Len) / 16 kann er nicht eindeutig als double oder decimal identifizieren. Deshalb muss du es explizit angeben. Zum Beispiel mit (decimal) (( 5 + p_Len) / 16 )
Gruß
danielf - Di 31.08.10 10:25
Hallo,
die Ceiling Methode ist überladen und bietet die Datentypen double und decimal an als Parameter an. (5 + p_Len) / 16 kann er nicht eindeutig als double oder decimal identifizieren. Deshalb muss du es explizit angeben. Zum Beispiel mit (decimal) (( 5 + p_Len) / 16 )
Gruß
highlander78 - Di 31.08.10 11:17
Es ist eine decimalzahl.
Wie sollte die Zeile genau aussehen, mir raucht schon mein Kopf :-(
C#-Quelltext
1:
| int Len16 = Convert.ToInt32(5 + ((Math.Ceiling(decimal)((5 + p_Len) / 16)) * 16)); |
so haut es nicht hin....
Gruss
danielf - Di 31.08.10 11:21
Die Klammerung passt nicht. Du hast die Ceiling-Methode mit (decimal) als Parameter aufgerufen.
Was du willst ist die Ceiling-Methode aufrufen und den Ausdruck casten.
C#-Quelltext
1:
| int Len16 = Convert.ToInt32(5 + ((Math.Ceiling((decimal)((5 + p_Len) / 16)) * 16); |
Gruß
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!