Hallo und willkommen zurück. Hier haben wir eine weitere Herausforderung. Ich hoffe, ihr
macht euch mit Strings und Charakter-Arrays vertraut. Ein sehr wichtiges Konzept mit c.
Diese Idee, diese Zeichenfolgenliterale in Variablen und Zeichenarrays zu speichern, versteht, dass es sich um ein Array
handelt und wie Sie auf verschiedene Elemente zugreifen können.
Diese Herausforderung wird sich darauf konzentrieren.
Wir werden eine weitere Herausforderung haben, die Ihnen hilft, zu verstehen, wie einige der Zeichenfolgenfunktionen verwendet
werden, da wir viele davon abdecken.
Aber dieses ist wirklich für euch, um euch mit diesem Konzept einer Zeichenkette und eines
Zeichenarrays vertraut zu machen.
Die Voraussetzungen für diese Aufgabe sind,
dass Sie ein Programm schreiben, das Ihr Verständnis von Zeichenarrays testet.
Ich möchte, dass Sie eine Reihe von Funktionen schreiben.
Ich möchte, dass Sie zuerst eine Funktion schreiben, die die Anzahl der Zeichen in einer Zeichenfolge zählt.
Es wäre ähnlich wie die Rührlänge, aber Sie werden es tatsächlich selbst implementieren,
ohne diese Funktion zu verwenden.
Sie können die Sterling Library-Funktion also nicht verwenden.
Die Funktion sollte ein Zeichen a als Parameter
annehmen und ein int zurückgeben.
Sie können also einfach ein Zeichenarray als Parameter verwenden.
Bei dieser Aufgabe müssen Sie sich überhaupt nicht um Zeiger kümmern.
Dies wird möglicherweise nur eine Parameterkonstante annehmen, da sie sich nicht ändern wird.
Und alles, was Sie tun werden, ist, dass Sie das Array durchlaufen müssen.
Obwohl Sie eine Zeichenfolge haben, können
Sie dennoch auf einzelne Zeichen zugreifen, da es sich um ein Array handelt.
Wenn Sie also auf die einzelnen Zeichen zugreifen können, können Sie einfach eine Zählung durchführen und diese dann anzeigen.
Diese Funktion sollte eine Ganzzahl zurückgeben, die der Länge entspricht.
Die nächste Funktion, die Sie schreiben sollen, ist, dass Sie die
Verkettungsfunktion implementieren, mit der Sie zwei Zeichenfolgen verketten können.
Auch hier möchte ich nicht, dass Sie Bibliotheksfunktionen verwenden, verwenden Sie keine str cat.
Diese Funktion sollte drei Parameter annehmen,
das Ergebnis und dann die zwei Zeichen, die
Sie verketten möchten, die zwei Zeichenfolgen, die Sie verketten möchten.
Das können also Konstanten sein, weil Sie diese nicht ändern werden.
Das Ergebnis ist nur die Zeichenfolge, in der Sie speichern.
So ziemlich einfach. Auch hier müssen Sie sich nicht mit Zeigern befassen.
Sie werden ein paar Schleifen haben, jedes der Arrays
durchgehen und dem Ergebnis-Array zuweisen.
Und was Sie für diese Funktion zurückgeben sollten, ist nichts.
Sie müssen nichts zurückgeben, da Sie das Ergebnisarray übergeben.
Wir könnten dies ändern und einen Zeiger und ähnliches zurückgeben, aber das werden wir für diese Aufgabe nicht tun.
Dadurch werden zwei Zeichenfolgen manuell verkettet.
Die dritte Funktion, die Sie schreiben sollen, besteht darin, zwei Zeichenfolgen zu vergleichen, um festzustellen, ob sie gleich sind.
Auch hier möchte ich nicht, dass Sie die Bibliotheksfunktion verwenden. Ich möchte, dass Sie verstehen, wie diese Zeichenarrays funktionieren.
Diese Funktion sollte zwei konstante Zeichenarrays als Parameter verwenden und
einen Booleschen Wert zurückgeben,
entweder true oder false. Richtig, wenn sie gleich sind, sonst falsch.
Was müssen Sie also
tun? Sie müssen die Arrays durchlaufen und jedes Zeichen vergleichen.
Und Sie sollten wahrscheinlich nach dem Null-Terminator für
die gleichen Zeichenfolgen suchen, da die Null-Terminatoren bestimmen können, wann Sie aufhören möchten.
Da Sie nicht über die Größe dieser Arrays verfügen,
müssen Sie nach dem Nullterminator suchen, um zu bestimmen, wann die zweite Zeichenfolge verwendet wird.
Und Sie sollten tatsächlich die zweite Zeichenfolge mit der ersten vergleichen.
Sie müssen also herausfinden, wie das geht. Im Folgenden finden Sie drei Funktionen, mit denen Sie
sich mit dem Erstellen und Bearbeiten
eines Zeichenarrays vertraut machen oder darauf zugreifen oder darauf zugreifen können, um die Länge zu
bestimmen, die es verkettet, und um zu überprüfen, ob es gleich ist.
Viel Glück. Ich werde in der nächsten Vorlesung eine Lösung anbieten. Vielen Dank.