![]() |
C# ist komisch
Hi
ich hab gerad mal was sonderlich cooles entdeckt! Bin gerad dabei Code von Delphi auf C# zu portieren dabei ist mir ein kleiner Fehler unterlaufen...
Code:
Ok ich hätte dran denken sollen, das man Strings in C# mit " einleitet und nicht mit ' aber was denkt ihr was bei mir nachher im Label1 stand???
{
string var1 = "2004"; string var2 = "2006"; string var3 = var1 + '-' + var2; label1.Text = var3; } Antwort: 4055 Die Lösung ist: 2004 + 2006 + Ord('-') :wiejetzt: Ich frag mich ob das n Mangel in der Sprache oder im Compiler ist das er mir sowas ermöglicht! Greetz Boombuler PS: Bitte nich wundern das ich n bischen ohne Zusammenhang schreib ich bin noch geschockt von dieser Aktion! :pale: |
Re: C# ist komisch
Das ist eine ganz einfache Regel: Strings, die nur ein Zeichen enthalten dürfen mit ''-Zeichen geschrieben werden. Das funktioniert z.B. auch mit "Hallo"+'\n', weil \n nur ein Zeichen darstellt. Der Modale wert wird genommen, weil im ganzen String kein Buchstabe vorkommt und der Kompiler deswegen "gedacht" hat, du wolltest rechnen...
|
Re: C# ist komisch
Zitat:
Bei mir steht da ganz normal "2004-2006" im Label, so wie es sein sollte. Zitat:
Zitat:
greetz Mike |
Re: C# ist komisch
Ja, hast recht, ich meinte Char... :stupid:
|
Re: C# ist komisch
Zitat:
Greetz Boombuler Edit: bei .NET 2.0 ist das Problem gefixt, es trat nur auf .NET 1.1 auf! Edit2: Seltsam bei einem leeren Beispiel Projekt tritt der Fehler nicht auf! |
Re: C# ist komisch
Zitat:
Zitat:
Code:
Und in dem Moment, in dem sich C# so benehmen würde würde sich Herr Hejlsberg aus purer Scham erschießen.
string var2 = (2004 + ((Int32)'-') + 2006).ToString();
Sowas mag für Skriptsprachen wie dieser MS Basic dialekt oder PHP OK sein, aber nicht für eine Programmiersprache. ;) [1]Die CLR würde solchen Blödsinn jedenfalls garantiert nicht ermöglichen.... |
Re: C# ist komisch
Zitat:
Der StringBuilder fängt auch nicht an zu rechnen ;-) |
Re: C# ist komisch
MaBuSE: Ich hab einen interessanten
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:03 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz