[Playlisten] [Impressum und Datenschutzerklärung]

07.01 Zeichenketten (Strings)


CC-BY-NC-SA 3.0

Tempo:

Anklickbares Transkript:

wirhatten schon einzelne Zeichendie werden typischerweisedann alsKerl das abgelegtLückentext einArmund der Gedanke ummal auch in ganzes Wort abspeichern zu können oder komplettes Dokument abspeichern zu könnenistdas sichein Rave vonZeichenspeichereine Zeichenketteeine Kette Anzeichenein EindimensionalseraveUnd-Zeichensich speicherte sieht für diesen Text zum Beispiel sie speichern Doppelkreuz Si Enz ELPunkt DE und so weitereine Liste von Zeichendurchgegangen ?? ich zweidimensionalübrigens in zwei Dimensionen Speisen wirklich von links nach rechts und zurück von links nach rechts weiterals aufgedunsen hintereinanderandasdümmste was Messung könnte wäre wirklich die Zeichencodesanzugebendengib mir den Code gibt das Zeichen mit dem Hintergrund Nummer zweiundsiebzigderzeit mit der Codenummerneunzig Minuten neun hundert achtachthundert undelfdas kann kein Mensch lesenkann?? somit im Prinzip machen jedes Zeichen wird durch seine Codenummer dargestelltund ziehen Sie daraus ?? beiin dem Alter die Codenummer miteinander stehen damit ganzen Text darstellendas ist eine Zeichenkette im Prinzip in Chaben die Zeichenkettennoch eine Besonderheit anhängt den Wert null dahinter das Zeichen nullgibt es nicht wirklichunbemerkt das Zeichen mit den Symbolen Nummer null nicht das ZeichenZiffer nullsteht der viel weiter hinten das schon gesehendas Zeichen was diesem das Symbol Nummer null hat das gibt's nicht wirklich zum Das heißt in CEnde der Zeichenketteman speichert nicht die Länge der Zeichenkettekönnte man auch ?? Gesang oder Sessel Zeichenkette vonfünf Zeichenstattdessen setzt man ans Ende einen nullderneidterminierteString ist das der null beendetedie null beendete Zeichenketteund typische KonstruktionenCnicht die Länge zu speichern sondern null ?? zu hängen??in dieser Form wär'seher schwer zu lesen was soll das jetzt ein Text eine nicht wirklich diesemdie die Codenummern angebederDebugger kann uns das übersetzenaberes wäre trotzdem nicht richtig gut zu Leertaste sehen dasEls erkennt Jakewarda stehen sechs Sachen drindie null ist die sechste Sachedie zweiundsiebzigist die Codenummer für groß H die siebenundneunzigist die Codenummer fürein ?? für kleinA und so weiter und sofort wenn er Fertigordnungenin den Gesetzender Weise zeigte hier auch an das es üblichauch an diesen insgesamt aussiehtohne diese beenden null?? das ist die Konvention in C wenn ich Zeichenketten angebewird es an das Elsass endenden Null gesetztdie Götter nicht mehr zur Zeichenkette dazusteht ja nicht mehrwie sonst auch stehen ein wenig Druckenansondern sagt wo die Zeichenkette auf in dieser Form wäre das natürlichen Drama das einzugebeneines netterweise auch anders tuneine Möglichkeites immer noch nicht offiziell aber schon ein Schritt in die richtige Richtunger hatte schon erzählt das manmit einfachen Anführungszeichen untendass man mit einfachen Anführungszeichendie Symbole holen kann also wenn sie das schreiben ist das nichts anderes alszweiundsiebzigwenn sie das schreiben ist das nichts anderes als siebenundneunzigdie Zahl siebenundneunzigein einzelnerein einzelnes Zeichen in einfacheAnführungszeichenheißt gibt mirdas Kurzsymbolwas dazu gehörtpround eine Null am Ende das machtexakt dasselbeist bisschen besser zu lesenund übers dann tatsächlich schreibt es noch was NeuesKomma einige hatten schongesehen im Praktikum die zweifachen Anführungszeichenmit der einfachen durcheinandergebrachtgutNC heißen die doppelten Anführungszeichenziemlich anders als die einfachen Anführungszeichenschreibe einfach dasmit doppelten Anführungszeichenund sage damit genau das Wasser drüber steht diese drei Zeilenmachen alle dasselbedas natürlich dann das Mittel der Wahlso wird man es schreibenich würde vordann?? miteinander sookaydie erste Zeile seiner zu Fußdadurch die Nummern direkt angegeben?? die zweite Zeiledadurch nicht die Nummer direkt angegebensondern die Buchstabenmit einzelnenAnführungszeichendas heißt immer gibt mir die Codenummer?? Und-Zeichen groß H Anführungszeichen zudie zwanzig und so weiter sofortoder mit W nulldasselbe Resultatund zehndie übliche Schreibweise ist das dannan?? macht es dann automatisch mit doppelten Anführungszeichendas Theis doppeltes Anführungszeichen obeneine Zeichenkette in doppelten Anführungszeichen heißt alles was da drin steht?? in die groß umwandelnund dass es wichtiger Sachen nicht vergessen am Ende null einfügenwas hier rauskommt ist also ein Reh wassechs Einträge hat null eins zwei drei vier fünf sechs Einträgen in den fünf Buchstabenaber baut ein Weg aus Buchstaben was sechs Einträge hat ?? am Ende die null noch baut aber den doppelten AnführungszeichenVorsichtsehen sie die null nicht wieder ans Ende gestellt wird die gehört aber immer dazu einen C zeitgemäßenAlter meldetSphinxall diese drei Sachen bauen dasselbeRisiko noch maljetzt aber sagen was in der unterschied zwischen einfachen Zweifeln Anführungszeichen untensie istin anderen Sprachenkomplett anders in Csound in C plus plusanden die Nachfolgesprachenaußerhalb des ähnlich aber wenn sie einander bei den Spiegel guckenwas da einfach und was da doppelte Anführungszeichen bedeuten schon andere Geschichtealsodem sie das nicht als in Stein gemeißelt wie das aufgefasst wird das ist die Auffassung in den zehn Sprachenein Zeichenin einfachen Anführungszeichenwirklich guter LeerzeichenAnführungszeichen das ist eine einzige Codenummerein einziges Zeichensie gibt also keinen Sinn das sie hier mehrere Sachen in einfache Anführungszeichenschreibendas gibt was auf die Fingervom Compiler immer nur ein Ding in einfache Anführungszeichengibt mir den Code dieses einzelne Zeichenundin doppelten Anführungszeichenist das eineine CZeichenketteEinen Wahltermin Edith StringGettydas heißtdann dürfen auch mehrere Sachen drin stehenam wenn ich diese Zeichenkette hier auseinander nehmewie viel Bytes braucht diese Zeichenkettedas heißt wenn sich das angucken was da im Speicher stehtist das nichts anderes alsdas Symbol was zu A gehörtund danach die null zwei Bytesziemlich andere Geschichtedas hier ist eine Zeichenkettedie aus einem Zeichen bestehtdem Symbol für die AhrCodenummer für das Aund dahinter noch nullum die Zeichenkette abzuschließen sind Beistrich vorallembei Zeichenketten?? Grace sind kann man damit jetzt ziemlich zwanglos umgehen wie man mit weiß umgegangen istichführe mal vor wie mansuchenund ersetzen machen kann auf ganz billige Artunserer selbst zusammen ich möchte folgendes tun ?? ich möchte automatischin einer Zeichenkettealle Vorkommenvon klein Adurch klein E ersetzenallekleinenHaardurchkleineheer ersetzenwie würden Sie dasanfangenden heiligen würde eine for-Schleifeder müßig wissen wie viele Zeichen das sind in der Tat die für dich ausklinkenmit Zeiss Offandas fusionierten leider nicht mehr ganz so allgemein der Trick der allgemein funktioniertnehme ein VorteilIndexvornehmen in dieanUnternehmen geht mit einem Walde durch so lange das Zeichen was in der ?? bietenrigiden Stelle stehtsolange das nichtnur lässt Weiß sich immer nochzugangedas Ende der Zeichenketteist der der richtigen Seite das null drin steht in der Zelle also guck ich einfachjedoch keine Null Drinfeinden bin ich immer noch am arbeiten und dann kommt jetzt der Vergleichist denn jetzt an dieser Stelleersteht da denn jetztbitte einpaarauf diese Weisevergleiche zwei Zahlen was in derZeichenkette drin steht ist eine Zahl gerettetZahlmit dieser Zahlder Zahlsie neunzigsteht der sieben neunzig drin und wenn das im neunzig Trennstrich stehtin der sieben neunzig drin steht schreibe ich einfach was anderes reinnämlich die Zahl fürdas kleine ich das Kurzsymbol für das kleine ?? auf diese Weise das wäre Suchen und Ersetzenauf die ganz billige Artder Nähe einer fehlt noch was ?? vergessensollte nicht vergessen ?? zunächst Stelle geht ja in C plus plusso sollte das Fondsuni guckenschwandsovorsichtig durch?? ist gleich null ich gucke am Anfang nach ist sie von nullgleich A offensichtlich nichtGutesin ?? energy wird übersprungen I wird um eins erhöhtso ist sie von einsungleich null wird sie von eins ist ungleich null sind noch nicht am Ende Glück gehabtist sie von eins gleich A hoffentlichdie von ?? ist gleich Aokay ich geh in die Schleifen Körper in den in denin den Körper reinhörenund setzeersetze das durch ähda steht ehund so weiter und so weiterwennmir so letzter Durchgangwird fünfund ich gucke jetzt ist sie von fünf ungleich nullneinalso Ende der Schleife Ende der ZeichenketteEndlosschleifefertigdas wäre Suchen Ersetzen auf die ganzbilligezwei kurze Anmerkungennochanbei Zeichenkettenähnliche Ärger wie beiRayshielten die null wenn die fehlt Komma kleines Problem das ich mal die null Wegaus dieser Anführungszeichen untenZeichenkettedann passiert natürlich wasunsinnigeswas leistet sich stets hallo hallofür Bdadas Problem istdas hier zwei Zeichenketten direkt miteinander liegen im Speicherund die erste ?? schließlich mit null abzehn liest Halloda kommt sofort die nächste im Speicher dahinter Halloähmdazwischen steht keine null und deshalb glaubt er B isthallo halloalso wenn die fehlen mir die null filtert man ein Problemdas ist der nächste dicke Punkt analog zu dem Wasser Overflowandie mansich als Probleme kriecht in C und C plus plusgibt viele Funktionen inzwischen mit den man das besser machen kannaber grundsätzlich erst mal der GedankeZeichenketten mit null abzuschließenist höchst gefährlich dicken irgendwo den Speicher eintragenwenn man die nullnicht hinschreibendass es in moderner Sprachenabgestelltschon in C plus plusgeht das schickermit richtigen Tassen dafürPunkt eins und Punkt zweianes gibtwenn sie zufällig Software auch für China schreiben müssendie Möglichkeit auch mehr als die zwo hundert fünfzig Zeichen dazu verhandelnbehandelnund wenn sieWeitcharakterinkludierendann kriegen sieeinen neuen Typnamens White Charakter teilt und dabeiCharakterteiltdiesen neuen Typ Stadtdirektorund da passt auch bisschen mehr rein als die üblichen europäisch amerikanischen ?? NummerzeichenFußnotenPunkt