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
C++ string Klasse in Sketch benutzen?
01.05.2015, 12:51 (Dieser Beitrag wurde zuletzt bearbeitet: 01.05.2015 12:53 von HaWe.)
Beitrag #1
C++ string Klasse in Sketch benutzen?
hallo,
wie kann ich die C++ string Klasse in Sketch benutzen?
Ich möchte einen array of string initialisieren.

ich habe es so probiert: (lib <strings.h> richtig benannt ?)


Code:
#include <strings.h>

//...
  string astr[8];
  strcpy(astr[0], "option 0       ");
  strcpy(astr[1], "option 1       ");
  strcpy(astr[2], "option 2       ");
  strcpy(astr[3], "option 3       ");
  strcpy(astr[4], "option 4       ");
  strcpy(astr[5], "option 5       ");
  strcpy(astr[6], "option 6       ");
  strcpy(astr[7], "settings / Quit");
//...

bekomme dann aber immer die Fehlermeldung
Zitat:'string' was not declared in this scope
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.05.2015, 13:03
Beitrag #2
RE: C++ string Klasse in Sketch benutzen?
Hi,
"string" gibt es nicht. Es gibt eine Klasse "String". Diese hat aber nichts mit "strings.h" zu tun und man kann auch nicht mit strcpy irgendwas reinkopieren. Schau Dir mal das hier an: http://www.arduino.cc/en/Reference/StringObject. Da sind auch haufenweise Beispiele dabei.
So wie das für mich aussieht, brauchst Du das aber gar nicht. Versuch's mal so:
Code:
char astr[8][] = { "option 0       ",  "option 1       ",  "option 2       " ... };
Die Blanks würde ich allerdings weglassen, das frisst nur unnötig Speicherplatz.
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.05.2015, 13:14 (Dieser Beitrag wurde zuletzt bearbeitet: 01.05.2015 13:39 von HaWe.)
Beitrag #3
RE: C++ string Klasse in Sketch benutzen?
hallo,
danke für deine schnelle Antwort! Smile
String (groß geschrieben) kannte ich allerdings wirklich noch nicht...

muss ich dazu eine lib #includen?

andererseits, char astr[8][] wäre mir auch lieber -

wie gebe ich damit aber zum Beispiel den string
astr[8][]
per Serial oder myGLCD aus?
und wie kann ich einen beliebigen der
astr[8][] mittendrin neu ininitalisieren mit einem char sbuf[] ?
?
per
strcpy(astr[3][], sbuf) ?

oder sehe ich da irgendwie den Wald vor Bäumen nicht ?





nee, ich kriegs nicht hin, wie bekomme ich einen array of String hin mit 8 Elementen?

Code:
String  astr[8];


so dass ich direkten Zugriff auf jedes string-array-Element habe (zum Neu-beschriften oder zur Ausgabe per Serial.print oder per myGLCD.print ?)

...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.05.2015, 13:35
Beitrag #4
RE: C++ string Klasse in Sketch benutzen?
(01.05.2015 13:14)HaWe schrieb:  String (groß geschrieben) kannte ich allerdings wirklich noch nicht...
muss ich dazu eine lib #includen?
Schau Dir halt mal die Beispiele an, die hinter dem Link stehen, den ich Dir geschickt habe.

Zitat:wie gebe ich damit aber zum Beispiel den string
astr[8][]
per Serial oder myGLCD aus?
Serial.print(astr[8]);
...wobei bei es den astr[8] nicht gibt, es geht nur von 0 bis 7 bei Deiner Definition.

Zitat:und wie kann ich einen beliebigen der
astr[8][] mittendrin neu ininitalisieren mit einem char sbuf[] ?
?
per
strcpy(astr[3][], sbuf) ?
strcpy(astr[3], sbuf);
Das geht aber immer davon aus, dass die Arrays auch lang genug sind!

Zitat:nee, ich kriegs nicht hin, wie bekomme ich einen array of String hin ?
wo ich direkten ZUgriff auf jedes string-array-Element habe (zum Neu benennen oder zur Ausgabe per Serialprint oder per myGLCD.prnint ?)
Zeig doch mal, was Du bisher probiert hast und was dabei rauskommt.

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.05.2015, 14:48 (Dieser Beitrag wurde zuletzt bearbeitet: 01.05.2015 15:28 von HaWe.)
Beitrag #5
RE: C++ string Klasse in Sketch benutzen?
habs gefunden, es waren ganz dämliche KLammerfehler Sad

jetzt kompiliert er , und jetzt läufts endlich! 8-)

vielen Dank, Thorsten Idea !
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  sketch Bewaesserungsanlage golex 5 325 08.05.2018 17:19
Letzter Beitrag: KampfHund
  upload sketch ab EEPROM ADDRESS xx sepp01 2 249 06.05.2018 23:12
Letzter Beitrag: sepp01
  Nachtwächter - Fehler im Sketch juergen001 15 887 24.04.2018 06:54
Letzter Beitrag: juergen001
  Noch ein Ucglibproblem bei Verwendung in Klasse da_user 5 363 07.03.2018 13:44
Letzter Beitrag: da_user
  Serieller string zwischenspeichern und wieder ausgeben. Matt 15 948 03.03.2018 20:23
Letzter Beitrag: Tommy56
  Brauch hilfe bei einnem Sketch MrMagoo 10 643 11.02.2018 13:49
Letzter Beitrag: hotsystems
  byte´s zu einem String zusammenfassen ? Franz54 18 1.198 31.01.2018 10:10
Letzter Beitrag: MicroBahner
  Sketch kleiner und effektiver gestalten? Gonmaus 4 502 26.01.2018 23:41
Letzter Beitrag: Tommy56
  Arduino Sketch mit ArduBlock öffnen bertl68 4 595 04.01.2018 15:08
Letzter Beitrag: Binary1
  Arrays of String in C Diskusguppy 3 406 16.12.2017 10:12
Letzter Beitrag: Diskusguppy

Gehe zu:


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