[Playlisten] [Impressum und Datenschutzerklärung]

07B.1 Arrays und Zeichenketten; strlen


CC-BY-NC-SA 3.0

Tempo:

Anklickbares Transkript:

mancheeinfachen Aufgabe zu BasegegebenPunktdas war wieder sehr fantasievoll aberdamit sage ich ja A ist der Name eines Arrays in Klammernganzer Zahlen sindPunkt und wenn ich den sofort Werte geben will ?? sofort initialisierenwill kann ich das dann so hinschreibenmit irgendwelchenpassenden Zahlen verstehenKommaanwenn ich hier direkt Werte angebeweiß der Compilersind fünfzig Muster nicht die fünf eintragenbis ?? Komforts zumindest eingebaut in das ganzenunzum Einstiegmit Raysstellen Sie mal festdurch suche ob in diesem Gerät die Zahldreizehn vorkommtund dreizehndrin Fragezeichenwie würde ich das anfangen ich habe eine Reihe von dem ich nichts weiß außerdass es fünf Elemente hatdas können zum BeispielMesswerte sein das ich nichtobich ab Beginn sofort eingetragen habe was es ist ?? Angaben der Messwerte gemessen wird möchte ich wissen ob bei diesenKlanges in fünf Stück auch bei diesen fünf Messwerten die Zahl dreizehnter Beistrich würden sie das feststellenKommasoäußerliches alles gesehen unterwegs??erstensnatürlich eine for-Schleifeund keine while-Schleifean dieser Stelle while-Schleifewäreich warte darauf dass irgendwas nicht mehr funktioniert ich warte drauf dass die Ampel nicht mehr grünes ich warte darauf dassirgend eine eine ein Fließbandnicht mehr voll ist oder was auch immer das wäre nur weil Schleifenfor-Schleifesie natürlich an dieser ständig Weise sind fünf Stücknull eins zwei drei vierdie von vorne bis Hintenabzugrasen das ist einfach Job für die for-Schleife nicht für die Waldschleifees geht auch wieder weit schweifen sieht komisch ausähm?? ganz handelsübliche for-Schleife fangen bei null an den wirerste im Essay hat fieserweise die Nummer null??deshalb fang ich hier bei null ander letzte ist dann also nicht fünf sondern vierSAPI kleiner fünfnull eins zwei drei vier??und in einer Schritten so das wäre meine for-Schleifeund jetzt möchte ich wissenob der Eintragmit der Nummer die gleich dreizehnistandas auf jeden Fall ein Kniff bei dem irgendwas passiert ich würde empfehlen immer sofort hier diesesganzenganze Schablone hinzu schreiben ist runde Klammer aufSchweifklammer Form runde Klammer auf Schweifklammerund eine Schablone auszufüllenund wenn der mit der Nummer I gleich dreizehn ist muss also was den von wegen gleich gleich dreizehn Bände mit der Nummer I gleich drei Zynismus irgendwas passierenlieber gleich was passieren solltebesser wieder einer Stelle dieses hier gesehenwenn sie sich das überlegenan I istnull eins zwei drei vierI wird niemals dreizehn in diesem Spiel das kann schon prinzipiell funktionierenbei ihnen als dreizehn wird anderer Punkt warum es nicht funktionieren kann ist das nicht sagen welches Gerät stellt sich vor sie hätten ein zweites GerätErnte müssen sie irgendwie sagengucke im ersten nach oder kuck im zweiten nach ist überhaupt nicht die Rede davon in welchem Bereich nachgeguckt werden solldas also ganz vielrumwas einem sofort auffallen sollte Mus A vorkommenund die übliche Schreibweisekönnen hier spiegelnübliche Schreibweise für ihre ?? ist es eben mit eckigen Klammern A eckige Klammervon Iin einer Sprachen andersMATLAB verwendet runde Klammer aufaber die ganzen Seesprachen verwenden eckige Klammer zuSein gibt mir die Nummer dieaus diesembin I gleich null istwohl die Nummer vier raus A eckige Klammer null wäre die Nummer vierund so weiteralles durchgehenund dann gucken ob irgendeiner von den gleich dreizehn istdieser Niedersachse könnte natürlich auch wieder rechnen der muss nicht zwangsläufig nie drin stehen ?? eine feste Zahl drinstehen?? ich könnte die ganze Zeit hier die fünf rausholen das ein bisschen langweiligoder ich könntedas tun beim ersten Malnehme ichvierals wenn die gleich null ist der erste Schleifendurchlaufnur durch zwei macht nulldenn durch die vier hohen A von nullwieder so schreiben würde hier was wird beimzweiten Streifendurchlaufpassieren wenn ?? gleich eins ist die Stadt damit nur über zweites ??ist gleich einswas wäre der Wert hier links wenn die gleich eins istalso wichtigdie ?? ist eins danneins durch zwei in ganzen Zahlen rechnet CB auch seine Nachfolger sparen zu null ausA von null steht dann da die durch zwei wird null A von null will ich wohl als das Vieh auf der linken Seite steht vier?? wird man hier sonnig tun kommt hin und wieder mal vor man dann sowas für die Indexe in den in ZweierschrittenbrauchKomma denselben miteinander vergleichen kann sowas mal vorkommendass sie nur als Demodass sie in den auch rechnen dürfen da muss keine feste Zahl stehen da muss ich immer I stehen hier Inderin kann was errechnet sich den Funktionsaufrufkann der Inderin stehtsichert aber das ?? war die Reihenfolgevon demes wird der Wert von dem sie genaudann wird der Wert von dem hier halbiertgesagt wie wäre zweiten Durchlauf wäre einswird der Wert von dem wir ihn durch zwei macht nullund dann rechnet die Maschine damit A von null ausmacht die zweiundvierzigin dieser Reihenfolgees für dich nachträglich geteiltsondern es wird erst derIndex ja ausgerechneterst das ausgerechnet was in den eckigen Klammern steht das gibt irgend eine ganze Zahl und diese ganze Zahl wird benutztumin dieser Liste nachzuguckenin der Reihenfolgedann was in den eckige Klammer stetiges Mittel gesagt zuerst ausgerechnetdas einer Geschichte ob sie sowas schreibendas bezieht sich dann auf das Ergebnissowieso in eckigen Klammern von irgendwas eckige Klammer zuist das was aus dem Gerät rauskommt und hier will ich das Teil was aus dem ?? rauskommt?? ich mal ?? mag dieses Rechenich mir das vorstellewas die Zahl nicht mehr wir zwanzig tausend sieben fünfnull eins zwei drei vier vier zweiundvierzigwas an das Omegaam??nimmt das Recht Beistrich was es so schreiben nimmt das Rating TelefonbuchjedesWellness für sich ein eigenes Telefonbuchdie Kinder sich mit Namen rein sondern mit Nummern rein gucken unter der Nummer drei nachdiesen dreizehn Herdes wäre dann A vondreizwei Millimeter anders unddreizehn sieben fünfwennSie also nachgucken unter der Nummer drei in dem Murray unter der Nummer drei nachguckenkriegen sie eine sieben raus aus diesem Schreiben aber von drei wenn sie schreiben aber von einsin eckigen Klammern auf die Eins kommen dann gibt ihn davon eins dieses hier den Wert zweiundvierzigzurückdas ist nicht ganz unendlich einer Funktiondass die Werte hieraus ?? Speicher stammen diese Werte werden nicht ausgerechnetich gehe mit nach eins reinund durch die zwanzig zurückdie steht schon im Speicher drin ?? muss ich ausgerechnet werden nicht gemindert vier Reinarvon vierund komme mit der fünfzurückaus Speicher ausgelesenachtzigfast jene Art von Funktionnur eben eine Funktion die beschrieben wird in den direkt im Speicher der Tabelle steht oder genauer gesagt zu nutze liest ein versteht vier zwanzig dreizehnsieben fünfalso egal was sie hier veranstaltenob sie dadurchzwei Teil was diese Aufgabe nicht zu tun hatoder das machen oder das Ergebnis durch zwei teilen ändert das was im Ray steht nichtdas FA wird erst verändert wenn sie sowas veranstaltenwieArtvon Iist gleichirgendwasmehr als elf sowas so ändern Sie das Regime in die Zahl elf und weisen Siedieser Stelle im Raid zudas ist ja der Vergleich der Vergleich macht nichts kaputt nicht auf der linken Seite nicht auf der rechten Seiteamwas auch nichts kaputt machen würde wäre wenn sie sowas hier habensie lesenaber von ihm ausaus dem FAHafen I auf der rechten Seite eines gleicher Zeit informiert mit irgendwelchen VerzierungenamHille sich aus dem Ray aussind nicht in der Liste veränderthier vergleiche ich den Inhaltes wird nicht in der Liste verändertegal ob das A von IS auf der rechten oder linken Seite von gleich gleichstehthier verändere ich da schreibe ich wirklich den Wert elfin die Soundsovieltezellereinandas wäre noch eine Möglichkeit den Wert zu verändernohne ein Gleichzeichenwas passiert hier zwar der Vorschlag auch von ihm Mala von ihmwas passiert hier was wird geändertwenn überhauptin der Tat sie rechnen was unterlassenen Rechners rechnen den Nieteneintragholen mal den jeden Eintrag holenund für das landet nirgendwo Punkt es wird sogar nichts verändertähm sie müssen sie irgendwo speichern damit zumindest irgendwas verändert wird es auf jeden Fall nicht das er sei verändert Komma dass machen es wird nur ausgerechnet und nicht gespeichertanwie kann ich das äh ändernnoch weiter ändern ohne jetzt Gleichzeichen zu schreiben was wird auch das wäredas heutige ?? in der Tat plus plusden Eliteneintragum eins erhöhendas geht auchund natürlich geht genauso mal gleich plus gleich geteilt gleich das ganze ?? mit gleicher Zeichen schreibenund auch nochmals zum Unterschiedließ sie wieder heißendass ich die Laufvariablezwischendurch ändere ganz ganz Gemeinde sollten dies nicht tundies als den Wert ändern der innere ?? stehtden Wertnummer I um eins raufzählendamitfielam Rande erzählt hier eigentlich bei der Job ob die drei Zentren istdann ?? ich dir also alle durch in dem reinund stelle fest aufNummer I Platz dreizehn istdas muss im jetzigen sie merken natürlich ?? Zufluss wissen will ob irgendwas gleich dreizehn Musik kann ich mir das sinnvollerweisemerken ob irgend eine von den Zahlen dreizehn wardas Office ist ?? gute Variable deshalb hierfür zehnmalin Clubs dann wohl auch nochich möchte mir ja Informationja nein merkendas schreit ganz laut meiner Burschen Variableist gleich Variable leider nicht nennen dreizehntenVariante?? dürfen nicht mit Ziffern anfangenrechnen sie Wallis dreizehntensetze die am Anfang auf vormalsPepsiundwenn die Leitzinsenist?? System auftrug und am Ende weiß ich dann auf die dreizehntenso sähe das ausdasganze vernünftig funktioniertOptimierungen ausdiversen Einzelschritten angucken könnenStichwortoptimierungenich könnte hier noch ?? trocken optimierenich gehe meine Schleife durch gucke für jeden nach bei dreizehn isteiner dreizehn ist merklich mir dass sie dreizehn vorgekommenistPunkt im nächsten nach dem übernächstensind ?? Jones daseffizienter zu machen?? ja also derharte Wegschreibe ich das hier die Schreibfehler versuses schmerztetwas Komma das siehtder harte Weg wäre dashaben sie setzen die Laufvariableoder am besten so ganz jenseits der Grenzesetzen die Laufvariableauf einengroßen Wert Nein Punkt es es würde funktionieren aber das es extremunsicher stellt sich vores war eine längere Liste und die hat fünf hundert EinträgeBeistrich Terminator fünfzigist nicht im Sinne des Erfinders die Laufvariable anzufassenPunkt typischerweisegeht der irgendwie ganz fürchterlich was schief wenn sie in der Schleife die Laufvariableanfassendannihr soll die Laufvariableüberprüft werden und sie soll höher gestellt werdenaber bitte nicht verändern außerhalb von dem herdas ist im allgemeinen keine gute Ideeseiner weiß ganz genau was man tutes würde fusionieren aber schon sicher Geschichte das wäre Lösung einsLösung zwei wir können hier gucken bei dem Vergleicheinfach mit logischen Verknüpfungen ist die kleiner als fünfund haben wir die dreizehn noch nicht gefunden solange sollte Schleife laufen wie kleine Satz fünf und für die Stadt und weniger als noch nicht gefunden hab das wäre extrem schwierig zu lesenfür dich auch von abratendie übliche Lösung wäre mir jetzt ?? hier ein Break einzusetzenin der Formteigbricht dienächstäußere Schleife ab Beistrich was ist die Schleife die hier direktaußerhalb von dem if steht die for-Schleife die wird abgebrochenwenn ich die dreizehn gefunden habebreche die Schleiferkönne noch weiterschlafen außenrum stehen ständig vor der wird noch eine for-Schleifeaus welchen Gründen auch immer zum Beispiel zweidimensionalesRaysie vor der wird noch ?? for-Schleife außen drum seinin der Formdann würdedann würde dieses beträgtdiese innere for-SchleifeWahlschleifer?? du schleifen was es auch immer ist abbrechenaber nicht die äußereoder was sonst noch ausstehen magschleifendas ist jedoch von den Brecht die innerste Schleifedie wir gerade haben abzubrechenähm es geht auch ohne das Projekt mit dem Weg jetzt einfach schnellerwürde man typischerweise Denk dazu schreibenaus Gewohnheitsgründenschonder spannende Moment wird es funktionierenBeistrichdiedieses ?? Komma nicht aber die Lok als gernesohier meine Relaishier haben wir unser Raymit seinen fünf Einträgendie Wunschvariableist dreizehn drin ist derzeit noch auf Fordsnulljetzt geht's in die Schleife reinbesteht vor der SchleifeI ist noch nicht angelegtsehen hier die eine Weile ist noch nicht angelegtwir gehen jetzt in die Schleife reinin ?? angelegtes ?? Punkt ausgedrückt werdenzumindest noch nicht sichtbarsojetzt haben wir I ist gleich null erste Schritte Punkt ob er schon fertig mit der Schleife ganz zu Beginn bevor das erste Mal die for-Schleife rein geht Punkt der Shop ist wirklichkleiner fünf ein nicht der Falljetzt kommt unser Vergleich hierA von null wird rausgeholtist gleich null acht von null wird rausgeholt das heißt der Wert vierauf der linken Seite wird mit der dreizehn verglichennicht gleich ist es ?? geht nicht in das F reinda nicht invasiv reinsondern macht mit dem Fahrer weiter ein zweiter stellenist gleich einsdas ist immer noch kleiner als fünfso und jetzt vergleichen wir mit der ?? zweiundvierzigist gleich eins A von eins mit der Zeit wird sich vergleichen ist immer noch nicht wahrbesser Schleifendurchlaufwir vergleichen jetzt endgültig mit der dreizehnist gleich zweihier steht die dreizehntedritte dreizehn verglichen jetzt das ihr freisind in dem Heft drinnen ersetztdieses ist drei Zentrenauf Schuhso und geht mit dem Break aus der for-Schleife rausund macht nicht mehr weiter macht er nicht nochdie drei und die vierso sind außer for-Schleife Draußendammesgefundenscheint soweit zu funktionierenich sollte ihm ?? doch sagenweil das vorgeschlagen wurde statt des Breaks ein Returnamtwäre an dieser Stellekeine gute Idee das Returnweil sie Hauptfunktiondas Programm wenn Sie so wollen bald die Hauptfunktion beendetdas wäre nicht im Sinne des Erfinders ich möchte nur die Schleife beendenMänner vonunter programmgemäßspeziellen Funktionen kann es auch mit Return funktionieren an der Stelleaber ihr im Hauptprogramm müssen Returnkeine gute Idee und Schleife abzubrechenjetztkommt der Bogen zu den ZeichenkettenZeichenkettenfunktionieren in Cwie die Reises sind verkappte RSeine ?? Zeichenkette mal ganzgenial Bmankönnte eine Zeichenketteso hinschreibenHalloineinzelnen Buchstaben oder sogar schöne Tipparbeitkönnte eine Zeichenkette so hinschreibendas wäre aberziemlich perversdas möchte sich keiner antunFragezeichen Gänsefüßchen zu schreibenmit den einfachen Anführungszeichenseinsgibt immer die Nummer des Symbols für den Buchstaben darin immer die Nummer des Symbols für die für das Haar das groß Alieber mal die Nummer des Symbols für das kleine Adie Nummer des Symbols für daskleine L und so weiter das sagen sie mit den einfachen Anführungszeichenwas rauskommt sindes hier in dem ganzeinfachen CeWhitesdirekterBytesjeweils ein Byteswo steht dieser Buchstabe in der Tabelle wo steht der Buchstabe in der Tabelle und so weiteres möchte natürlich niemandlänger Zeichenketten auf diese Weise hinschreiben das sieht ja pervers aus sie haben denselben Effektnicht in der Sirene zum AC Siam denselben Effekt wenn siedoppelte AnführungszeichenverwendenPunkt das ist derselbe Effekt das macht dem Speicher dasselbenatürlich ist die zweite Art bisscheneleganter muss ich gestehen als die erste als wenn sie das hier hinschreiben haben sie ein Gerät eingerichtetmitsechs Zeichenes wird automatischdiese C übliche null am Endedazu gefügthabendas es jetzt ein wesentlicher Unterschied zu denRS von Zahlen und anderen Sachenbei dem Array von Zahlenmuss ich mir merken das es fünf warendaskann nicht siein dieser Fassung hier nicht fragen wie viel drin stehen mit einem kleinen Heck aberder funktioniert nicht an allen Stellenam bei den Zeichenkettenist das traditionell in C so das am Ende der Zeichenkettedas Symbol mit der Nummer null steht also nicht das Symbol null nicht die gemalten null auf dem Bildschirmdie hatten andere Nummersondern das Symbolmit der Nummer null ein nicht Symbol sozusagenbesonders kennzeichnenzu sagen hier ist die Zeichenkette zu Endeist das für Zeichenketten muss man sich nicht die Länge merkendie Länge einer Zeichenkette folgt automatischdaraus das am Ende die Null stehtritterlichen alten Videos schon gesagt das Saar zu Beginn wenig gute Idee herausdas so zu machen heute wissen wir das war keine gute Idee was die Sicherheit angehtwarenaber seinerzeit gab'snoch kein Internetund keine bösen Leute im Internet Punkt und solche Geschichten erstmalig auf solche Gedanken kommenan ich für völlig hervor dass diese bei mir das selbe sindim Speicherhalte ich für ganz wichtigMagisterdurcheuerBecken setzensogesehen sie jetzt B und Cwas steht im SeehintereinanderH A L L O unddas Zeichen mit der Nummer nullwas sie den Cdasselbehalte ich für elementar wichtig dass sie sich das klarmachen dass das hier ein und dasselbeerzeugtsechs Bytes sind einander im Speicher?? null am Endeoffene Zeichenkettein C ist nichts anderesals eine Rallyeeine Räder nicht von Ihnenin dieser einfachen Fassung sondern ein Rave vonCharakter eine Reihe von Bytesdas sie sind zwei Schreibweisendie dasselbein denselben Effekt haben und sie an was in der Praxis schreiben wird man wird natürlich nicht das hier schreiben das wäre Perversionendiesekurze Fassung ist viel schöner als in der kurzen Fassungnicht so klar ist es ?? Seite Komma ausführlicheswird automatischdie null am Ende ergänzt ich schreibe hier keine Null hindiese Null am Ende wird automatischdabeidasist ja grundsätzliche Gedanke von C Zeichenkettenso schön heißt null terminierteCharakters FranksAmmenokaydann schreiben Sie jetzt mal paar Programmzeilenum festzustellenobins C der Buchstabe AArt Rennen istist in C ein A oder mehrere Armwie kann ich das jetzt feststellen das Muster grobaber auch nur grob vielleicht was mit dem hier zu tun haben was wir eben hattenwie können Sie feststellen ob hierder Buchstabe Adrin wenn sie nicht wüsstendass es Hallo ist das einer Benutzereingabeseinder Nutzer gibt was eigentlich möchte ich gerne feststellen unter der Buchstabe A drittens Schreibarbeit seindahin und das festzustellenalso wie eben eine Variable in der ich mir merkeist A Trennstrichmal so klarzumachen ?? kleines A sein sollPunktdas habe ich keins gefundensozwei Arten mit der Schleife habe ich jetzt gerade gesehen ich für erst maldie Art vor die mir nahe liegender scheintnicht so elegant aber naheliegender?? eine while-Schleifean das als ebenso lange wie ich die null nicht gefunden habearbeite ich weiterdas wäre das einfachstefür mich das naheliegendste Verkehrseinfassungwar linksseitig guckenob an der aktuellen Stellekeine null stehtin der Formso lange arbeite ich weiterund sehen sich Bauches Variable I ungeschickterweiseschondas ist das unschöne an dieser Lösung ich muss das I außerhalb der Waldschleifeeinführenund kann ich hier nicht verwendendannesse Schritt wäre nach jedem Durchlaufwird ein zweiter gestellt dass es jetzt zum bisschenHandarbeit anders als bei der for-Schleifeprüfe ob es schon am Ende sindund wenn nichtwahr weiterund stelle dann einen Schritt weiter ?? C plus plusoder im Tor unterbringenund die kommt jetzt der Vergleichsteht oder steht an der Stelle Isteht da nunder Buchstabeklein Aund wenn ja merke ich mir dasund breche die Schleife ab ist aber drinnenwird aufDrew gesetztund die Schleife wird abgebrochenwas soll ich noch mal weiter suchenlohnt sicher nicht ich wollte nur wissen ob einer drin istgenau drei ??so sehr das auseine Variante der ich mir merken ob ich fündig geworden bin oder nichtzu Beginn wieder nicht fündig gewesendie Laufvariableund solange ich noch nicht die null das Ende der Zeichenkette gefunden habe prüfe ichobdessen Haar warfalls ja merke ich mir das breche die Schleife abfalls nichtgehe ich zum nächstenC plus plusdas mit der Null muss immer mal sagen das kann man nicht oft genug sagendiese null ist nicht dasZeichen null nicht die Ziffer null das ist die Ziffer null das Symbol was die null darstelltdas es was anderes das Symbol was die null darstelltist nicht das Zeichen mit der Nummer null das Zeichen mit der Nummer null ist ausdrücklich dazu daum das Ende einer Zeichenkettezu bestimmen ?? nichts anderes??die beiden nicht durcheinanderbringengesehen?? auch das schön grün zeigt und wenn's inAnfangsstriche setzen das sie wäre jetztdas Symbol null dieZiffer nulldass die schönen blauandere Möglichkeit wäre noch das hat man eben gesehenFrageneine andere Möglichkeit ist noch Backslash nulldamit sage ich auch das Symbol mit der Nummer nulloder einfach ähmdie Zahl nullhier stehen ja lauterNummern trennen die Nummerdes Symbols groß Hdie Nummer des SymbolsSymbolseite des Zeichensklein A die Nummer des Zeichens klein L und so weiterund dieser ?? Tracks Nummer null?? ist das Ende einer Zeichenkettedas wäre eine Möglichkeit?? mit Einzelschrittenkeine Schadensoziemlich vormeindieist hier noch nicht eingeführtsei da ich prüfeob ich am Ende der Zeichenkettebin C von nullist ?? Zeichenkettenull Zeichen langist sofort das erste Wasser drin steht eine null ist natürlich nicht das Wissen waralsogeht's da weiterüberprüfen ist SA Nein ist es nichtein zweiter und beim nächsteneff ssie ssie gleich einsbeim nächsten haben wir das AC von eins dieser Vergleich wird daergeht hier rein merkt sich das und beendet die Schleife so weit so gutdieseAnführungszeichenmüssen sein wenn sie da keine Anführungszeichenmachensucht der Compiler nach einer Variable namens Adas wäre ganz andere Geschichte dieses Ding steht jetzt für die Variablenamens Agio tatsächlich hattenaber dieses rayetwürde die absurderen Geschichten da veranstaltendiese überhaupt nicht wollen mit dieser keine Anführungszeichenschreiben also dieses ist der Name einer Variablen ohne Anführungszeichenmit Anführungszeichen obeneinfachen Anführungszeichensagen siegibt mir die Nummer des Zeichensdes Symbolssoll lieber sagen Zeichen weil Symbols mehrdeutig eine Stelle gibt mir die Nummer des Zeichens klein Adas sagen sie mit einfachen Anführungszeichen obeninsofern geht übrigens das ja auch nichtergibt in die Nummer eines Zeichens arbeitenvier Zeichen haben mich eine Nummer das kann ich funktioniert das Gitter mit einem Buchstabenim Regelfalldas sind die einfachendie sind ja also nötigund die doppeltenAnführungszeichenwar dieser Trickich gebe eine komplette Zeichenketteanund der Compiler baut mir darausein FA aus den Nummern Leerzeichenund macht am Ende noch null da hinten drandas sind die doppelten Anführungszeichendas hat sich auch in zu in diverse der NachfolgesprachendurchgesetztamJavaScript zum Beispielmacht keinen Unterschied zwischeneinfachen doppelten AnführungszeichenHauptsache sie nehmen dieselben vorn und hintenamaber das ist ?? Ausnahme die meisten Seesprachenhabenso ungefähr diese Unterscheidung mit einfaches Anführungszeichen zuich die Nummer eines Zeichenseines Zeichensmit doppelten Anführungsstriche zuich eine Zeichenkettesodas war die erste Lösung jetzt ?? die zweite Lösung dieeleganter ist sich auch nicht gerade das Umbauwarich bau das hier mal umamwas an dieser Lösung nicht schön ist dass ich die Laufvariableaußerhalb der Schleife sichtbar habe sowasnervt einen im fortgeschrittenenStadiumeine der alles gerne möglichst gekapseltkeiner soll irgendwo rumfummeln können dass dieses I außerhalb derSchleife sichtbar es macht mich nicht glücklichauch später noch mal einer nieähm besser davon genervt das es hier schon da esan es gibt eine Möglichkeit das auch noch for-Schleifezu machennämlich sofreueich lege diese Variable ihn jetzt in der for-Schleifean um eine Bedingung ist nicht SI kleinerirgendwas ist sondern meine Bedingung ist ich bin noch nicht am Endeoder kann ich jetzt auch schon weiterschreitenin der Formund jedes C plus plus am Ende wegnehmendas nach denselben Jobsieht etwas komisch ausist aber deutlich elegantereine for-Schleifedie Variable Istartet bei nullsie wird jeden Schritt ein zweiter gestellt ??das läuft so lange wie ich nicht am Ende der Zeichenkette bindas es meine Bedingung die Bedingung ist jetzt nicht mehr in kleiner fünf oder was sollen die Bedingung ist ich bin nicht am Ende der Zeichenketteso lange läuftmeine for-Schleifedas ist ein bisschenungewöhnlichwäre aber definitiv die eleganteste Lösung war normal wie das aussiehtsoich fange an mit je gleich null?? ich fange an Mitgliederweiter so mit I gleich null jetzt Punkt danach bin ich am Ende der Zeichenkettenie alsoin welcher Weinwieder ein Haar neinalso gebe zum nächstenbin ich jetzt am Ende der Zeichenkettenein also gucken wir nachist das ein paarJahrmerken wir unsEnde der Schleifesowie das auch das deutlich eleganterwennSie das Urteil heftig findenkann ich nachvollziehen mit der while-Schleifeist das erst malgewöhnlicherso lange wie wir nicht am Ende sindPunkt meinerdas warme grandiose bisschen unsicher mit den Zeichenkettengroß gerade folgendes noch einpaardie ist gleicheine Zeichenkettedie so aussiehtwie viel beiwie viel Bytes braucht diese Zeichenketteim Speicherals eine leere Zeichenketteund das muss ein Byte im Speicher werden genau für die Null muss er irgendwo noch die null am Endeunterbringendas es noch so ?? Geschichte die gerne übersehen wirdeine leere Zeichenketteenthält zumindest die Informationdas Nullzeichendrin sind das muss man sich auch merken man kann nicht nichts weiter zu sagenals im Speicher steht inzwischen ?? null nulldas Zeichen mit der Nummer null nicht die Ziffer null Fragezeichenmit der Nummer null ??sehen das würde ich auch tatsächlich funktionierenden?? des hier probiere widersetzetbevor beim ersten nach Punkthier feststellenauch das es gleich null und die Schleife beendendas Feld ähnlich funktionierende Schleifen sofort beendet ??ein Zeichendann ich ?? Komma was zu diesen Sicherheitsgeschichtensagendas hier istsowas was unsicher machtwenn jetzt irgendjemandBöses mir eine Zeichenkettegibt's in der keine Null drin stehtwas wird passierendas ein stillschweigenderenNCwenn wir Zeichenkettendurch die Gegend reichenhabe hinten eine null angehängtund jetzt kommt ein Bösewichtund gibt eine Zeichenkettebei der hinten keine Null dranhängtkorrektalso wenn ein Art Rennen ist hinreichend frühgehe ich hierauskein Problemwenn die Zeichenkette aber keine Null enthält und kein A enthält wird das hier nicht wahr werdener macht einfach weiter C ist so C macht dann einfach weiternach dem offiziellen Speicherbereichder für die Zeichenkette da es machte einfach weiter geht über den Speicher hinausguckt dahinter nach Havanna findet oder ?? null findetzufällig irgendwo schon finden in denMegabytes auf dem normalen Rechnerim weißen klein Z mit mit hundert zwanzig Byte Speicherkassettedie Seite sinnieren ?? null findet und irgendwo nah findetund dann einfach unendlich da rotiertdanndas ist ?? gefährliche Geschichte das heißt ichgebe sie den Speicherreihen der mir nicht gehörtnordisch Betriebssystemwird das dann einfach abwürgenum ein nicht solches Betriebssystemletztlich abwürgen oder fast gar nicht merken dass das stattfindetKomma muss hinreichend dann hinreichend weit über das hinausgehenauchnormal Betriebssystemdamit es das merkt dass da was schiefläuft ?? das ist der Ärger wenn diese Null nicht da ist wenn jemand diesesstillschweigende Abkommen da verletzt das Zeichenketten?? null am Ende habendann wird ärgerlichdas kann Absicht sein böser Wille sein und das kann auch einfachDummheit seinganz heutiger Programmierfehlereinfach das man es vergisst und dann hat man ihm kleines Problemdeshalb war das dann im Nachhinein betrachtet keine so gute Ideedass sich die Erfinder von C ausgedacht haben die Zeichenketten mit null zu beendenKomma gewordendamit im Nachhinein nicht viel Klagenahnendie meisten Funktionen die Zeichenketten verarbeiten gibt es in C netterweise in zwei Variantenman keine maximale Länge angeben sodass man sagen kann ich bin mir sicher diese Zeichenkette ist nichtlänger als tausend Zeichentausend Zeichen aufähm die Funktion mit ihrer häuslichen Masse besprechen die ergeben auf zum minimalen Makro Gott oder nicht so viel Sinn ich hoffe dass da keiner einbricht per Internet obwohl man weiß ja nie heutzutagedannaber mit diesen Funktionen weiter die Satzdazu gibt's dasdie aller erste Funktionwäre natürlicheine mit der ich die Länge einer Zeichenkettefeststellen kann?? SDR Längenstringlängstdas wärediealler wichtigste denke ich die Zelt einfach nachwie viel Zeichen habe ich denn bis zur nullund damit ich die verwenden kann?? natürlich entsprechenden Headersonst kennt der Compiler die nichtsollteStrichpunkt H seinmuss anderen Variablennamen vergeben ?? es reicht nicht zu ?? studieren muss oder Variablennamendabei jeder Zug zurals sie haben eingebaute Funktion und die Länge einer Zeichenkettefestgestellterzählt einfach abwie viel Zeichen bis zur nulltragenkönnte es einmal ?? ausprobierendemdieSorten drei Punkte setzenso bisdahin sowie lang ist meine Zeichenkettediewie lang ist die Zeichenkettesiehoffentlich null in der TatStinglängs gibt Ihnen wie viele echte Buchstaben drin stehenund die nullist die hier die Zeichenkette D hat ein Byte im Speicherhat aber die Länge null es stehen nur echte Buchstaben drin das hätte man auch verwenden können sie hätten hierauch prüfen können ob I kleiner alsKing längst von C isthat den selben Effektvon der Sorte Karten oder andere Funktion hatte ich in alten Ritusfunktioninsbesondere Zeichenketten zu vergleichen?? Funktion um Zeichenketten zu kopieren so weitergezogenkleine Liste an Funktionen die mankennen solltemangeglaubt zur ÜbungsbaumKomma diese hieristja die bauen wir mal selbst dessen Idee habe Sonderfunktion von innen aussieht als ich habe eine Funktiondurch eine Zeichenketteübergeben kannund die Funktion liefert die Länge der Zeichenkettezurückich schreibe mal selber diese Funktionzur Übung das in Idee haben wie alle diese Funktionendie mitgeliefert werden im Prinzip aussehenalso auf folgendeshier ich nehme hier das Stringhaar wieder raus dass wir unsere eigeneFunktion da mal Bauernselbst gemachthabengerade lieferte ganze Zahl zurück?? des?? darüber nachdenkeneigentlich liefert sie eine Zahl ohne Vorzeichen zurückdie Zeichenkette hat mich minus zweiundvierzigZeichenanKomma keine Panik Komma Linz kommt zurückan Sie heißtschon längst wie die eingebaute Funktiondamals jetzt weiterdas Ding braucht eineZeichenketteund in einer Schleifestellt es festwie viele Zeichen es bis zu null sind und wenn es fertigist damitgibt's diese Anzahlzurück wie Verzeichnis bis zu null sind so stell ich mir das vorals wenn ich dem eine Zahl übergeben wollen würde wäre das zum Beispiel sowas wie inXoder inoder was auch immerder Typ von dem Ding vor sich hin übergebe und ein Name dafürund im folgenden heißt es dann eben zuwas ich übergeben habeund jetzt will ich eine ZeichenketteübergebendennTyp istCharaktereckige Klammer aufund der Name ist steht leider dazwischen in C bei den Everestund der Name ist irgendwasmehr oder minder plausibles Klammer zu Beispiel esso sieht das aus ?? eine Funktiondie Stringlängeheißtsie gibt eine ganze Zahl zurückjetzt auch mit Vorzeichendiskutabelwas sie nimmtentgegennimmteine Zeichenkettenamens ersten folgenden innerhalb der Funktion heißt die dann ?? esSchardamit arbeiten sie weiter eineSchleife welche Art auch immer weiter vordrängen sich aufund sie geben die Länge zurückich besorge mir mal die for-Schleifevon ebendie war dochrecht elegant?? ich mir mal?? Blick auf die Schweifklammer wieder zusich jetzt es nicht sehendiese for-Schleifeging doch schon eine Zeichenkettedurch so langeam Ende sindsie im Prinzip schon mal dicht bei der Sacheeinmal überlegenob das sinnvoll istander zählt durchbis wir wirklich auf der am Ende stehen bis IP Nummer von dem Eintrag istmit der null solange ?? die for-Schleife durch Berger ist es müßig eine Si dran kommen sie Sehende komme ich nicht an das I draneine gute Idee von mir geradeKomma dann aber lieber die Waldschleifedann ich startemit nullso außerhalbjetzt kommt die while-Schleifeaber dassieht etwas besser aus Beistrich dass C plus plusin die while-Schleiferein schmeißenwie komme ich jetzt an die Längeeiner Zeichenkettegenausobillig ist das Returnjetzt funktioniert es ist das dieaußerhalb von dem weit sichtbar das es an dieser Stelle gutwas VM artig benutzt um es ihm zu verbergendas wird man typischerweise haben wollen aber hier will ich eben gerade nicht ich will wissen was der letzte Index war das es ?? ganz nettdie gleich null undich gehe so lange durch bis sich auf den letzten Sitzeweil ich mit Null anfangen zu zählenist die Nummer des letzten auch tatsächlichdieAnzahl der Zeichen vorherdas Grundwasser zum Abschluss noch mal an ich glaube nicht mit der leeren Zeichenkette sondern hier noch mal den Halloals eine selbst gebaute FunktionenString längstfürso da sind wir ich gehe die Funktion reinwenn duglaubstda sind wires hat jetzt die Rolle meiner Zeichenkette zehngesehenden Begriff Umgebung weiß auch nicht so richtig wie lang die ist aber wir wissen es ist Zeichenkette die mit null aufhörtKomma Frau verlassenaber selbst gebaut habenso ist der null ?? gleich null neunzehn wird einfach durchSpucke solange bis ich einen finde in der Zeichenkette der null istHamasder mit der Nummer fünfder fünf Zeichen die null am Ende ?? ich fange mit null Einzelzellender mit der Nummer fünf ist die null das genau was ich haben will das gebe ich auch zurück als Länge der Zeichenketteund wo siedass sie die fünfso sehen diese Funktion im Prinzip ausund ersehen Sie noch maldas im Zweifelsfall gefährlich sind sie diesen Kontrakt sagt man so schön mit diesem Kontakt nicht einhalten dass am Ende der Zeichenkette null stehtläuft diese Funktion hierin den Wald das ist keine gute Idee