Hallo,
ist ein char-Array ein String?
Danke.
Gruß Chris
Hallo,
ist ein char-Array ein String?
Danke.
Gruß Chris
Chris72622:
ist ein char-Array ein String?
Ein char-Array ist ein sogenannter C-String, der mit einem Nullzeichen abgeschlossen wird.
So wie hier: http://arduino.cc/en/Reference/String
Nicht zu verwechseln mit String-Objekten, so wie hier: String() - Arduino Reference
Hallo Jurs,
danke für Deine Antwort, aber ich muss jetzt doch noch einmal ganz genau fragen:
Wenn ein alter "Programmierhase" von einem String spricht, meint er dann ehr einen C-String oder ein String-Objekt?
Ich frage mich z.B. was auf dieser Seite hier mit str gemeint ist:
Gruß Chris
Chris72622:
Hallo Jurs,danke für Deine Antwort, aber ich muss jetzt doch noch einmal ganz genau fragen:
Wenn ein alter "Programmierhase" von einem String spricht, meint er dann ehr einen C-String oder ein String-Objekt?
Kommt immer drauf an, also aufs genaue Sprachumfeld.
Man muss das IMHO eher anders betrachten: Sprichst Du von primitiven Datentypen (wie char) oder Objekttypen (wie String).
Chris72622:
Ich frage mich z.B. was auf dieser Seite hier mit str gemeint ist:Serial.write() - Arduino Reference
Gruß Chris
Steht doch da: str: a string to send as a series of bytes
Wobei Write() mit mehreren unterschiedlichen Parametertyoen implementiert ist, siehe Doku:
val: a value to send as a single byte
str: a string to send as a series of bytes
buf: an array to send as a series of bytes
Die kannst Du je nach Bedarf nutzen, der Compiler kümmert sich darum die richtige Implementierung der Methode zu nutzen.
Da ich gerne zwei Arrays miteinander vergleichen möchte, man aber scheinbar nur Strings miteinander vergleichen kann, frage ich mich nun, wie man ein Array in eine. string wandelt.
Daher meine ursprüngliche Frage..
Geht das überhaupt?
Gruß Chris
Guck dir doch mal die Funktion "memcmp" aus <string.h> an. Vielleicht hilft dir das ja weiter.
Zum vergleichen gibts
int strcmp(const char *, const char *)
und
int memcmp(const void *, const void *, size_t)
Chris72622:
Ich frage mich z.B. was auf dieser Seite hier mit str gemeint ist:
Das steht doch in dem Fall explizit dabei:
str: a string to send as a series of bytes
Also ist dort ein C-String / char-Array gemeint, genau wie bei allen Library-Funktionen.