Entwickler-Ecke
C# - Die Sprache - C# checked
12profi - Sa 14.08.10 20:18
Titel: C# checked
Hallo,kann mir jemand das checked in c# erklären weil z.b. mit oder ohne checked ist es das gleiche :
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| static void Main(string[] args) { Console.Write("Geben Sie eine Zahl im Bereich von "); Console.Write("0...{0} ein: ", Int16.MaxValue); short shtVar = Convert.ToInt16(Console.ReadLine()); byte byteVar = checked((byte)shtVar); Console.WriteLine(byteVar);
} |
und ohne gibt es kein Unterschied wenn ich das Programm ausführe oder?
Ich hoffe ihr könnt mir helfen ;)
mfg 12profi
12profi - Sa 14.08.10 22:28
Hi,
Danke das habe ich auch versucht nur leider verstehe ich das nicht (zu kompliziert für ein 12jährigen Jungen) desewegen wollte ich das mir das jemand mit eigenen Wirten erklärt
mfg 12profi
Th69 - So 15.08.10 10:15
Wenn du jetzt zur Laufzeit einen Wert dort angibst, der nicht mehr in ein 'byte' (0 bis 255) paßt, dann kriegst du eine OverflowException (ohne das checked würde einfach bei short->byte das obere Byte ignoriert).
P.S: Der Compiler kann Fehler bei "checked" nur erkennen, wenn es sich innerhalb der Klammern um konstante Ausdrücke handelt, z.B.
C#-Quelltext
1: 2: 3:
| const short shVar = 1000; byte byteVar = checked((byte)shVar); |
12profi - So 15.08.10 10:20
Achso das heißt:Mit checked checkd er ob es Konvertiert werden kann und gibt mir fals es falsch ist einen Lauftzeitfehler an. Ahhhhh Danke
mfg 12profi
Greenberet - So 15.08.10 11:20
12profi hat folgendes geschrieben : |
Achso das heißt:Mit checked checkd er ob es Konvertiert werden kann und gibt mir fals es falsch ist einen Lauftzeitfehler an. Ahhhhh Danke
mfg 12profi |
Nicht nur beim Konvertieren. auch wenn du z.b. int.MaxValue + 1 machst. Ohne würdest du auf int.MinValue kommen und mit checked bekommst du eine Exception
12profi - So 15.08.10 12:34
Was ist das eig.Exception
Mfg 12profi
Delete - So 15.08.10 12:44
12profi hat folgendes geschrieben : |
Was ist das eig.Exception |
Wie bitte?
Delete - So 15.08.10 13:38
Nutz doch einfach mal Google. Oder such hier im Forum. Oder guck in dein Buch.
12profi - So 15.08.10 15:50
Ok,ok danke
12profi - So 15.08.10 16:28
^^ Danke hab ich schon nachgekugt
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 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!