• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

Mehrzeilige Strings in C/C++?

Westbär

Weißer Winterglockenapfel
Registriert
06.04.07
Beiträge
881
Huhu,
Ich schreib mir gerade einen kleinen WebServer - auf der Basis von SDL_net - und will gerade den HTTP-Header senden.
Da sich der HTTP Header über mehrere Zeilen erstreckt und ich von PHP komm mach ich das einfach so.
Code:
char *msg = "Text
Text
Text";

Wie gesagt, in C geht sowas nicht. Kann man mir eine Lösung für sowas bieten? Ich hab das schonmal gewusst aber leider vergessen :(.

Vielen Dank schonmal,

Gruß
 

nic

Bismarckapfel
Registriert
18.01.06
Beiträge
141
String Test = "1.Zeile des Textes" +

+ "2. Zeile des Textes";
 

Walli

Blutapfel
Registriert
06.01.06
Beiträge
2.605
Das setzt aber eine String-Klasse voraus, die den operator + für die Konkatenation anbietet ;) . Die hier gesuchte Lösung für char-Arrays hat Amin bereits genannt.
Code:
char const* test = "Hallo Welt!"\
                   "Hallo Apfeltalk!";
 

Westbär

Weißer Winterglockenapfel
Registriert
06.04.07
Beiträge
881
Vielen Dank, Amin!
Hat funktioniert :)
 

Amin Negm-Awad

Süsser Pfaffenapfel
Registriert
01.03.07
Beiträge
665
Jepp, die Lösung mit dem + entspricht in PHP einer Lösung mit dem .-Operator. Das wäre dann zwar auch eine Lösung, aber etwas ganz anderes. (Was man dann leicht erkennen kann, wenn der +-Operator eben etwas anderes machen würde als Anhängen, etwa in Strings enthaltene Zahlen addieren.)
 

tjp

Altgelds Küchenapfel
Registriert
07.07.04
Beiträge
4.059
Wie gesagt, in C geht sowas nicht. Kann man mir eine Lösung für sowas bieten?
Ganz einfach: Zeichenkette mit Anführungszeichnen in der ersten Zeile abschließen und dann mit Anführungszeichen die Zeichenkette in der zweiten Zeile fortsetzen.
Code:
char * s = "Erste Zeile"
           "Zweite Zeile";