Frage vom End Of String "\0"

Gast #912830
Lesenswert?
• ▲
▼
Hallo,

mache ich gerade eine Parse mit ATmega128. Controller soll jetzt "End of 
String" richtig erkennen. (String ist von Computer)

Habe ich eine Empfehlung von Erfahrener, dass ich "\0" benutzen kann.

Ist die Sonderzeichen '\0' die Zusammensetzung von zwei 7-bit ASCII 
Zeichen (\ und 0)?
Wenn Ja, Dann kann ich "\0" per Tastatur von Computer eingebenorder?

Vielen Dank!!
Gast #912837
Lesenswert?
• ▲
▼
da es kein "lesbares" Zeichen in einem ASCII-String gibt
wird diere mit Null (chr$(0)) abgeschlossen um das
Ende zu signalisieren.

dh wenn du eine 0 (Null) emfängst ist der String alle.

Gruß Fred
#912864
Lesenswert?
• ▲
▼
Sven Stefan wrote:
> Ist das bei seriell (COM) auch so? Ich dachte immer da wird 0x0D0A
> gesendet (also Return und Newline, ganz früher auch Wagenrücklauf
> Zeilenschaltung WRZS genannt).

Das ist zuallererst eine reine Vereinbarungssache zwischen
Sender und Empfänger.

Wenn der Sender definiert, dass er als 'String Ende' Kennung
das Zeichen ';' schickt, dann ist für den Empfänger der String
zuende sobald er ein ';' empfängt.

Was du meinst ist die gebräuchliche Definition einer
Zeile: Eine Zeile sind umfasst alle Zeichen bis irgendwann
ein CR/LF oder LF oder CR empfangen wird.

Das kann bereits ein String sein, muss aber nicht.
Niemand sagt, dass in einem String nur eine 'Zeile'
enthalten sein darf.
Gast #912865
Lesenswert?
• ▲
▼
Vielen Dank!
Ich habe auch in ASCII Tabelle folgende Zeile gesehen:

DEC    HEX    CHARACTER
0   0   NULL

Ich gebe Befehle (ASCII String) von PC nach Mikrocontroller. ATmega128 
leitet  das String weiter. Aber der soll diese NULL (DEC 0) richtig 
erkenen.

kann ich aber jetzt nicht per Tastatur eingeben. Wie mache ich dann 
weiter. Habt ihr noch Idee?
Gast #912873
Lesenswert?
• ▲
▼
> kann ich aber jetzt nicht per Tastatur eingeben. Wie mache ich dann
> weiter. Habt ihr noch Idee?

eine Null lässt sich glaube über die Tastatur eingeben!

nagelt mich jetzt aber nicht fest

entweder

Alt 0 0 0

oder

AlrGr 0 0 0

Gruß Fred
Gast #912883
Lesenswert?
• ▲
▼
Um ASCII Zeichen einzugeben / senden kannst Du im Terminal Programm 
einfach [Alt] drücken und gedrückt lassen, den dezimalen ASCII Wert 
eingeben und dann [Alt] loslassen.
Also z.B. [Alt halten]0[Alt loslassen] und schon wurde ein Nullzeichen 
eingegeben. Oder für 9: [Alt halten]57[Alt loslassen]
Gast #912980
Lesenswert?
• ▲
▼
Hallo Fred
Alt ist es! Hab es gerade getestet.
Alt gedrückthalten und danach den ASCII Dezimalcode des Zeichens!

Eine Kurze Frage habe ich vergessen.
Wie Gebe ich unter Windows solche ASCII Code ein? Also Wie hast du 
getestet?

Gruß
Ju
Persönliche Seite #912994
Lesenswert?
• ▲
▼
> Hallo Fred
> Alt ist es! Hab es gerade getestet.
> Alt gedrückthalten und danach den ASCII Dezimalcode des Zeichens!
>
> Eine Kurze Frage habe ich vergessen.
> Wie Gebe ich unter Windows solche ASCII Code ein? Also Wie hast du
> getestet?

Äh, genauso, wie Du selbst drei Zeilen weiter oben beschrieben hast:

> Alt gedrückthalten und danach den ASCII Dezimalcode des Zeichens!
Gast #913006
Lesenswert?
• ▲
▼
@ Ju

nimm den Editor oder Wordpad aus dem Windows Zubehör.

ALT (Taste auf der Tastatur) gedrückthalten und nacheinander

zb 065 eingeben, danach ALT loslassen

dann soltest Du ein großes

"A" sehen!

065 = 0x41 = 0b1000001 = 0o101 = chr$(65) = "A"

Gruß Fred

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.