Announcement

Collapse
No announcement yet.

Länge des Strings begrenzen.

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Länge des Strings begrenzen.

    Hi @ll!

    Ich habe eine Frage:
    Ich will/muss mit "getline(cin,titel)" ein String einlesen, es funktioniert wunderbar, aber..... ich kann ja sehr viel Zeichen eingeben, wie kann ich diese nur sagen wir mal auf 40 begrenzen? Es geht nämlich um die Ausgabe: ich will, das nur erste 40 Zeichen ausgegeben werden. Mit setw(40) geht es nicht. =/

    Wer weiss rat?

  • #2
    Hat die verwendete String-Klasse die Funktion Substring?

    Notfalls mit der bösen Holzhammermethode, den String Zeichenweise in temporären String schreiben (entweder bis die 40 Zeichen erreicht sind, oder der String zu Ende ist) und am Ende den temp. String wieder zurück in den Originalstring schreiben. Das ist aber wirklich KEIN sauberer Stil. Da doch schon eine Stringklasse vorhanden ist, beherscht sie solch Operationen bestimmt schon.

    Welche Entwicklungsumgebung setzt Du ein

    Comment


    • #3
      Hi!

      Danke für deine Antwort!
      Also, Substring kann ich auch verwenden, aber wie du schon gesagt hast....
      Ich setze Dev-C++ von Bloodshed ein, ist wirklich ein guter Compiler!

      Cy

      Comment


      • #4
        Wenn Substring vorhanden ist, kannst Du nach dem Einlesen des Strings einfach prüfen:
        <PRE>
        if (InputString.Length() > 40)
        InputString = InputString.SubString(1,40);
        </PRE>
        Ob es eine Möglichkeit gibt, bereits beim Einlesen die max. Länge auf 40 zu setzen, weiß ich nicht. Ich verwende den BCB 6, und da hat TEdit eine entsprechende Eigenschaft. Mit Konsolenprogrammen habe ich so gut wie keine Erfahrung.

        Grüße Joche

        Comment


        • #5
          Trotzdem vielen Dank!!!
          Es hilft mir weiter!

          Cya =

          Comment

          Working...
          X