Einzelnen Beitrag anzeigen

Benutzerbild von JasonDX
JasonDX
(CodeLib-Manager)

Registriert seit: 5. Aug 2004
Ort: München
1.062 Beiträge
 
#3

Re: C# ist komisch

  Alt 25. Aug 2006, 11:51
Zitat von Boombuler:
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:
{
    string var1 = "2004";
    string var2 = "2006";
    string var3 = var1 + '-' + var2;
    label1.Text = var3;
}
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???

Antwort: 4055

Die Lösung ist: 2004 + 2006 + Ord('-')
Kann ich nicht nachvollziehn
Bei mir steht da ganz normal "2004-2006" im Label, so wie es sein sollte.

Zitat von CK_CK:
Das ist eine ganz einfache Regel: Strings, die nur ein Zeichen enthalten dürfen mit ''-Zeichen geschrieben werden.
'\n' ist kein string Das ist ein char! Strings werden mit doppelten Hochkommas gekennzeichnet, und wenn ich einen String, also einen nicht ordinalen Typ will, (auch wenn er nur ein Zeichen lang ist), dann nehm ich die <">, wenn ich hingegen einen char will, der immer eine konstante groesse hat, den ich auf nen int casten kann, dann nehme ich <'>.

Zitat von CK_CK:
Der Modale wert wird genommen, weil im ganzen String kein Buchstabe vorkommt und der Kompiler deswegen "gedacht" hat, du wolltest rechnen...
Das will ich aber nicht hoffen! Wenn ich rechnen will, nehm ich integer, und ich traue dem Compiler diese "unintelligenz" auch nicht zu. Wir sind hier doch nicht bei php

greetz
Mike
Mike
Passion is no replacement for reason
  Mit Zitat antworten Zitat