Hallo, en welkom terug. Hier hebben we nog een uitdaging. Dus ik hoop dat
jullie bekend raken met strings, character arrays. Een zeer belangrijk concept met c.
Dit idee om deze letterlijke tekenreeksen op te slaan in variabelen, tekenarrays, begrijp dat het een array
is en hoe je toegang kunt krijgen tot verschillende elementen.
Daar zal deze challenge op gericht zijn.
We hebben nog een uitdaging die je helpt te begrijpen hoe je sommige tekenreeksfuncties moet
gebruiken, omdat we er veel behandelen.
Maar deze is echt bedoeld om jullie bekend te maken met dit concept van een
tekenreeks en een tekenreeks.
Dus de vereisten voor deze opdracht zijn
dat je een programma gaat schrijven dat je begrip van tekenreeksen test.
Dus wat ik wil dat je doet, is dat je een aantal functies schrijft.
Ik wil dat je eerst een functie schrijft die het aantal tekens in een string telt.
Het zou vergelijkbaar zijn met de roerlengte, maar je gaat het zelf implementeren
zonder die functie te gebruiken.
U kunt de sterling-bibliotheekfunctie dus niet gebruiken.
De functie moet een teken a als parameter
aannemen en een int teruggeven.
U kunt dus gewoon een tekenreeks als parameter hebben.
Bij deze opdracht hoef je je helemaal geen zorgen te maken over aanwijzingen.
Dit gaat misschien een parameterconstante nemen, omdat het niet zal veranderen.
En het enige dat u hoeft te doen, is door de array te itereren.
Dus ook al heb je een string,
je hebt nog steeds toegang tot individuele karakters omdat het een array is.
Dus als je toegang hebt tot de afzonderlijke karakters, kun je gewoon een telling bijhouden en deze vervolgens weergeven.
Deze functie zou een geheel getal moeten retourneren, wat de lengte is.
De volgende functie die ik wil dat je schrijft, is dat ik wil
dat je de aaneenschakelingsfunctie implementeert waar je twee strings kunt samenvoegen.
Nogmaals, ik wil niet dat je bibliotheekfuncties gebruikt, gebruik geen str cat.
Deze functie moet drie parameters hebben,
het resultaat en vervolgens de twee tekens die
u wilt samenvoegen, de twee tekenreeksen die u wilt samenvoegen.
Dus dat kunnen constanten zijn, want die ga je niet veranderen.
Het resultaat is gewoon de tekenreeks die u opslaat.
Vrij simpel dus. Nogmaals, je hoeft niet te maken te hebben met pointers.
Je zult een paar lussen hebben, door elk van de arrays
gaan en toewijzen aan de resultaatarray.
En wat u voor deze functie zou moeten teruggeven, is niets.
U hoeft niets terug te geven omdat u de resultatenarray doorgeeft.
We zouden dit kunnen aanpassen en een pointer terug kunnen sturen en dat soort dingen, maar dat gaan we niet doen voor deze opdracht.
Dit gaat dus handmatig twee strings samenvoegen.
De derde functie die ik wil dat je schrijft, is om twee strings te vergelijken om te zien of ze gelijk zijn.
Nogmaals, ik wil niet dat je de bibliotheekfunctie gebruikt, ik wil dat je begrijpt hoe deze karakterarrays werken.
Deze functie moet twee constante tekenarrays als parameters gebruiken en
moet een Boolean retourneren,
waar of onwaar. Waar als ze gelijk zijn, anders onwaar.
Dus wat ga je doen,
je zult door de arrays moeten gaan en elk karakter moeten vergelijken.
En je moet waarschijnlijk zoeken naar de null-terminator
voor de gelijke strings, omdat de null-terminators kunnen bepalen wanneer je wilt stoppen.
Omdat je niet de grootte van deze arrays hebt, zul
je op zoek moeten gaan naar een null-terminator om te bepalen wanneer de tweede string is.
En je zou eigenlijk de tweede string met de eerste moeten vergelijken.
Dus je moet uitzoeken hoe je dit moet doen. Maar hier zijn drie functies om u vertrouwd
te maken met het maken van
een tekenreeks en deze te manipuleren of te openen om de lengte ervan te
bepalen, deze aaneen te schakelen en te controleren of deze gelijk is.
Veel geluk. In de volgende lezing zal ik een oplossing bieden. Dank u.