INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
String zusammensetzen
31.08.2016, 21:16
Beitrag #1
String zusammensetzen
Code:
char herz='*';
String text = herz + " Hello World "+ herz;

Wieso kommt dort als Ergebnis nicht "* Hello World*" ?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
31.08.2016, 21:38
Beitrag #2
RE: String zusammensetzen
ich hab jetzt nicht nachgeschaut ob der + operator auch für char überladen ist, vermutlich eher nicht.
herz ist jedenfalls keine zeichenkette sondern ein einzelner char.
eine zeichenkette wäre z.b. char* herz = "*"; oder char herz[] = "*"; dann ist die zeichenkette nullterminiert.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
31.08.2016, 22:24
Beitrag #3
RE: String zusammensetzen
Hier wäre strcat / strncat angesagt, das an den Ausgangsstring (char Array) den 2. String (char Array) anhängt. (bei strncat maximal n Zeichen)
Achtung: Das erste CharArray muss genügend platz für das Ergebnis haben.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.09.2016, 07:58
Beitrag #4
RE: String zusammensetzen
(31.08.2016 21:16)Mathias schrieb:  
Code:
char herz='*';
String text = herz + " Hello World "+ herz;

Wieso kommt dort als Ergebnis nicht "* Hello World*" ?



char herz[]="*";
String text = herz + " Hello World "+ herz;
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.09.2016, 08:55
Beitrag #5
RE: String zusammensetzen
(01.09.2016 07:58)Pit schrieb:  char herz[]="*";
String text = herz + " Hello World "+ herz;

Hast du mal versucht, dass zu kompilieren ?

Bei mir funktioniert es nicht.

Meine Empfehlung ist, es wie Tommy56 es vorgeschlagen hat, zu machen.

Beispiel:
Code:
char text[20];
  char herz[] = "*";
  char msg[] = " Hello World ";

  strcat(text, herz);
  strcat(text, msg);
  strcat(text, herz);

  Serial.print(text);

Das funktioniert.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.09.2016, 11:26
Beitrag #6
RE: String zusammensetzen
Code:
String a = "*";
  String b = a + " Hello World " + a;
Das würde funktionieren - eine Option?

mfg Scheams
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.09.2016, 16:59
Beitrag #7
RE: String zusammensetzen
(01.09.2016 11:26)Scheams schrieb:  
Code:
String a = "*";
  String b = a + " Hello World " + a;
Das würde funktionieren - eine Option?

Ok, das wäre eine Alternative. Allerdings eine, die auch mehr Flash braucht.

Deine Version benötigt 1784 Byte, die mit strcat benötigt 74 Byte.

Nur wichtig, wenn der Speicher knapp wird.

Alles ohne eine serielle Ausgabe.
Damit zeigt sich wieder, Strings benötigen sehr viel Ressourcen.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.09.2016, 17:17 (Dieser Beitrag wurde zuletzt bearbeitet: 01.09.2016 17:28 von Mathias.)
Beitrag #8
RE: String zusammensetzen
Unter Turbo-Pascal könnte ich dies so einfach machen:
Code:
var
  s: string = #3 + ' Hello World ' + #3;   �
Aber für C++ müsste es doch auch eine einfache Lösung geben oder ?

Das Zeichen #3 entspricht einem Herz-Symbol.

Ich habe da eine Lösung, aber in meinen Augen ein Murks.
Code:
char herz[] = { 3 };
String text = " Hello World ";
void setup()
{
    text = herz + text + herz;
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Arrays of String in C Diskusguppy 3 80 Heute 10:12
Letzter Beitrag: Diskusguppy
  String nach Byte Array in ASCII-Codierung nexus1212 7 442 05.11.2017 14:36
Letzter Beitrag: Tommy56
  String vergleichen georg01 15 1.174 18.07.2017 20:35
Letzter Beitrag: Tommy56
  String.charAt() ardun 3 436 02.07.2017 15:28
Letzter Beitrag: Tommy56
  Aus char string machen metzgefa 1 525 06.05.2017 15:15
Letzter Beitrag: Tommy56
  String übergeben oOSpikeOo 9 973 28.03.2017 19:47
Letzter Beitrag: georg01
  String in tinygps++ einlesen hoko 17 1.448 07.03.2017 15:40
Letzter Beitrag: hoko
  String -> Char *gelöst* Binatone 2 642 31.01.2017 11:08
Letzter Beitrag: Binatone
  ascii string to int array konvertieren renid55 3 749 29.12.2016 11:49
Letzter Beitrag: Tommy56
  String / HTTP Request Marc2014 4 829 23.12.2016 15:42
Letzter Beitrag: Tommy56

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste