steinadler Geschrieben 21. Dezember 2006 Geschrieben 21. Dezember 2006 Das hier soll rauskommen: char[12] = "Version V5.50"; und die Nummer 5.50 möchte ich aus einer Konstanten holen, momentan ist dies mit #define "5.50" realisiert. Allerdings weiß ich nicht, wie ich die Konstante in den String einbauen soll. Kann jemand helfen? Zitieren
Klotzkopp Geschrieben 21. Dezember 2006 Geschrieben 21. Dezember 2006 Wenn du das Array wie gezeigt mit einem Stringliteral initialisierst, und das Versions-Define auch ein Stringliteral ist, kannst du ausnutzen, dass Stringliterale einfach aneinandergehängt werden können: char v[] = "Version V"DEIN_VERSIONS_DEFINE; Für den gezeigten String brauchst du übrigens ein char-Array von mindestens 14 Elementen. Zitieren
steinadler Geschrieben 21. Dezember 2006 Autor Geschrieben 21. Dezember 2006 Hat geklappt, dankeschön Zitieren
Bubble Geschrieben 21. Dezember 2006 Geschrieben 21. Dezember 2006 "#define"s sollte man (in C++) eher vermeiden, wenn es sich um Konstanten handelt, die vom Compiler und nicht vom Präprozessor ausgewertet werden sollen. Im angesprochenen Fall kannst Du auch einen konstanten String verwenden, sofern Du in C++ programmierst. Nimm auch sonst lieber C++ Strings anstelle von C-Strings. Damit hättest Du auch den Fehler vermieden, den Du im Code-Fragment char[12] = "Version V5.50"; gemacht hast. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.