Witruimte verwijderen uit tekenreeksen met strtrim() in C-programmering

Witruimte Verwijderen Uit Tekenreeksen Met Strtrim In C Programmering



Witruimte is een essentieel onderdeel van tekstgegevens, maar als het gaat om het verwerken van tekstgegevens, kan witruimte een grotere uitdaging worden. Witruimtetekens zoals spaties, tabs en nieuwe regels kunnen het moeilijk maken om met tekenreeksen te vergelijken en ermee te werken. Deze tekens kunnen fouten en onjuiste resultaten bij tekstverwerking veroorzaken. Om deze problemen te voorkomen, kunnen we witruimte uit tekenreeksen verwijderen met behulp van de sttrim() functie in C.

Wat is de strtrim()-functie

De computertaal C wordt geleverd met een ingebouwde functie genaamd sttrim() . Witruimtetekens aan het begin en einde van een tekenreeks worden verwijderd. De string die moet worden ingekort, is de enige invoer die aan de functie wordt gegeven. De oorspronkelijke tekenreeks wordt niet gewijzigd; in plaats daarvan wordt een nieuwe string geproduceerd door de witruimte te verwijderen. De nieuwe string wordt geretourneerd door de functie.

De sttrim() functie is gedefinieerd in de header-bestand in C. De sttrim() functie verwijdert voorloop- en volgspaties uit de tekenreeks. We kunnen deze functie in ons programma gebruiken om ervoor te zorgen dat onze strings zijn ontdaan van alle witruimtes.







Witruimte verwijderen uit tekenreeksen met strtrim() in C-programmering

De syntaxis voor de sttrim() functie in C is als volgt gedefinieerd:



char * sttrimmen ( char * str )

De functie retourneert een aanwijzer naar een nieuwe string waaruit de witruimte is verwijderd. Het betoog str is de tekenreeks die moet worden bijgesneden. De oorspronkelijke tekenreeks wordt niet gewijzigd. De nieuwe string die door de functie wordt geretourneerd, moet worden vrijgegeven wanneer deze niet langer nodig is, om geheugenlekken te voorkomen.



Om te beginnen, de sttrim() functie telt het aantal witruimtetekens aan het begin van de tekenreeks. Het aantal witruimtetekens aan het einde van de string wordt vervolgens geteld. De niet-witruimtetekens worden vervolgens tussen de twee sets witruimtetekens ingevoegd om een ​​nieuwe tekenreeks te produceren.





Hier is een voorbeeld van het gebruik van de sttrim() functie:

#include

#include

#include

char * sttrimmen ( char * str ) {

size_t len ​​= strlen ( str ) ;

als ( alleen == 0 ) {

opbrengst str;

}

grootte_t begin = 0 ;

terwijl ( isruimte ( str [ begin ] ) ) {

begin++;

}

size_t einde = len - 1 ;

terwijl ( isruimte ( str [ einde ] ) ) {

einde--;

}

size_t ik;

voor ( ik = 0 ; i < = einde - begin; ik++ ) {

str [ i ] = st [ begin + ik ] ;

}

str [ i ] = '\0' ;

opbrengst str;

}

int hoofd ( ) {

char str [ ] = 'Linux-hint' ;

printf ( 'Voor het trimmen: ' % S ' \N ' , str ) ;

sttrimmen ( str ) ;

printf ( 'Na het trimmen: ' % S ' \N ' , str ) ;

opbrengst 0 ;

}

De sttrim() functie verwijdert elke begin- of eindspatie van een tekenreeks wanneer een tekenreeks als invoer wordt gegeven (zoals spaties, tabs, nieuwe regels, enz.). Na het toepassen van in-place wijzigingen op de invoertekenreeks, retourneert de functie een aanwijzer naar de bijgewerkte tekst. In de hoofdfunctie definiëren we de str-tekenreeks, die voorloop- en volgspatie heeft. Na het uitvoeren van de sttrim() functie op str, worden de originele en bijgesneden strings vervolgens afgedrukt met behulp van printf().



Uitgang

Conclusie

Het verwerken van tekstgegevens kan behoorlijk moeilijk zijn als het om witruimte gaat. Toch kunnen we snel en effectief witruimte uit strings verwijderen met behulp van de C sttrim() functie. De functie is eenvoudig te gebruiken en is compatibel met de meeste programma's die tekenreeksen verwerken. Zonder handmatig witruimtetekens te hoeven verwijderen, is het eenvoudig om retouren te bewerken en samen te stellen.