| Autor |
Nachricht |
Fragözeichen
Unregistrierter
|
Fragözeichen Unregistrierter
20:15:16 03.08.2012 Titel: |
Escape Zeichen |
Zitieren |
Sollte man Escape Zeichen in einfachen anführungszeichen '\a' oder in "\a" normalen speichern ?
was sind die unterschiede und wie sieht es vom speicher her aus '' ist ja speicher vom zeichen und "" speicher vom zeichen +1 für nullterminierung.. |
|
|
|
 |
Skym0sh0
Mitglied
Benutzerprofil
Anmeldungsdatum: 22.03.2008
Beiträge: 1950
|
Skym0sh0 Mitglied
20:18:01 03.08.2012 Titel: |
|
Zitieren |
es kommt drauf an was du vorhast.
ich persönlich würde mir konstanten für die escapesymbole schreiben und das wären dann chars, ist am flexibelsten
interpretiert werden müsste beides gleich, da \x als escape sequenz angesehen wird und daher als ein char interpretiert wird
der unterschied dürfte sich echt nur bei der größe auswirken und dann auch nur wenn du die nicht zwischen 2 std::strings reinpackst |
|
|
|
 |
Sone
Mitglied
Benutzerprofil
Anmeldungsdatum: 29.05.2012
Beiträge: 3141
|
Sone Mitglied
20:36:09 03.08.2012 Titel: |
|
Zitieren |
Escapesequenzen sind einfach andere Schreibweisen fuer ASCII-Zeichen in einem char/String Literal.
Welches Literal du brauchst (oder welchen Datentyp zum Speichern) ist davon abhaengig was du machen willst.
Merke aber: Das Schreiben eines Zeichens in einen Stream (cout << ch ) duerfte etwas schneller sein als die eines Strings (wie kurz er auch sein moege). |
_________________ You want to do X, and you think Y is the best way of doing so. Instead of asking about X, you ask about Y. | Wenn man was zum Lachen braucht: Why C++ Sucks
Zuletzt bearbeitet von Sone am 20:36:54 03.08.2012, insgesamt 1-mal bearbeitet |
|
 |
Michael E.
Mitglied
Benutzerprofil
Anmeldungsdatum: 25.10.2003
Beiträge: 5712
|
Michael E. Mitglied
23:18:06 03.08.2012 Titel: |
|
Zitieren |
| Sone schrieb: | | Escapesequenzen sind einfach andere Schreibweisen fuer ASCII-Zeichen in einem char/String Literal. |
Möööp. Deine Wette könnte man dir stündlich um die Ohren hauen. |
_________________ Your password must be at least 18770 characters and cannot repeat any of your previous 30689 passwords. Please type a different password. Type a password that meets these requirements in both text boxes. (http://support.microsoft.com/kb/276304/en-us/)
|
|
 |
Eisflamme
Mitglied
Benutzerprofil
Anmeldungsdatum: 26.06.2009
Beiträge: 2871
|
Eisflamme Mitglied
00:20:41 04.08.2012 Titel: |
|
Zitieren |
Was genau stimmt daran denn nicht?
PS: Michael E. und Sone geben ein schönes Paar ab. |
_________________ www.mihahome.de - Texte zu Englisch, Geographie sowie Präsentationen und Lesenswertes
Zuletzt bearbeitet von Eisflamme am 00:20:58 04.08.2012, insgesamt 1-mal bearbeitet |
|
 |
Sone
Mitglied
Benutzerprofil
Anmeldungsdatum: 29.05.2012
Beiträge: 3141
|
Sone Mitglied
15:17:10 04.08.2012 Titel: |
|
Zitieren |
| Michael E. schrieb: | | Sone schrieb: | | Escapesequenzen sind einfach andere Schreibweisen fuer ASCII-Zeichen in einem char/String Literal. |
Möööp. Deine Wette könnte man dir stündlich um die Ohren hauen. |
Aber es stimmt doch. Es sind Zeichenkombinationen fuer Zeichen (überwiegend Whitespaces), die man nicht im Code in das Literal "schreiben" kann, ohne die Syntax zu beleidigen:
| C++: | '\n' // <- Ok
'
' // <- Was weiss ich welcher Fehler jetzt kommt. | |
Aber natürlich haste Recht. Es ist keine andere Schreibweise, falsch ausgedrückt. Es ist eine Zeichenkombination die ein ASCII-Zeichen ersetzt.
\n ersetzt das ASCII-Zeichen an Position 10 in der Tabelle, ein Befehl zum Zeilenvorschub ( newline) in bspw. Konsolen.
Bspw. ist
dasselbe wie
| C++: | | std::cout << static_cast<char>(10); | |
@Eisflamme: Der hasst mich. Und zurecht. |
_________________ You want to do X, and you think Y is the best way of doing so. Instead of asking about X, you ask about Y. | Wenn man was zum Lachen braucht: Why C++ Sucks
Zuletzt bearbeitet von Sone am 15:18:00 04.08.2012, insgesamt 1-mal bearbeitet |
|
 |
Michael E.
Mitglied
Benutzerprofil
Anmeldungsdatum: 25.10.2003
Beiträge: 5712
|
Michael E. Mitglied
14:22:51 06.08.2012 Titel: |
|
Zitieren |
Sone: An der Formulierung "andere Schreibweise" störe ich mich gar nicht. Es sind die ASCII-Zeichen, die mich stören. Weder sind Escape-Sequenzen auf ASCII beschränkt, noch muss ASCII überhaupt abgebildet werden. Genauso gut könnte ich sagen, Escape-Sequenzen sind nur eine andere Schreibweise für EBCDIC- oder UTF8-Zeichen.
| Zitat: | | Es sind Zeichenkombinationen fuer Zeichen (überwiegend Whitespaces), die man nicht im Code in das Literal "schreiben" kann, ohne die Syntax zu beleidigen |
Warum schränkst du schon wieder ein? Mit Escape-Sequenzen kann man alle Zeichen umschreiben, nicht nur die, die du nicht so schön tippen kannst. |
_________________ Your password must be at least 18770 characters and cannot repeat any of your previous 30689 passwords. Please type a different password. Type a password that meets these requirements in both text boxes. (http://support.microsoft.com/kb/276304/en-us/)
Zuletzt bearbeitet von Michael E. am 14:24:24 06.08.2012, insgesamt 1-mal bearbeitet |
|
 |
|
Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben. Sie können auf Beiträge in diesem Forum antworten. Sie können Ihre Beiträge in diesem Forum nicht bearbeiten. Sie können Ihre Beiträge in diesem Forum nicht löschen. Sie können an Umfragen in diesem Forum nicht mitmachen.
|
|
|
|
|