Uvod:
Strune so bistvena sestavina programiranje , saj omogočajo komunikacijo s uporabnikov, prikaz rezultatov in branje datotek . So vrsta mehanizma za vnos in izpis podatkov. Od strune nenehno uporabljajo v določeni vlogi v programih, ki jih ustvarjamo, je učinkovito ravnanje z nizi in funkcijami, ki jih obdelujejo, ključnega pomena.
Ta vadnica vas bo naučila, kako razdeliti besedila glede na ločila z uporabo metoda strsep(). .
Pregledali bomo vnos in izhodni argumenti za strsep() , svoje sintaksa in teoretična razlaga in dovoljene vrste podatkov za vsakega od teh argumentov.
Nato bomo to, kar smo se naučili, uporabili v praksi z uporabo izrezkov kode in grafike za fragmentiranje nizov z uporabo metoda strsep(). , kar je razvidno iz praktičnih primerov.
Sintaksa funkcije Strsep() v jeziku C:
char *strsep(char **restrict stringp, const char *restrict delim);
Razlaga funkcije Strsep() v C:
- A vrvica se razbije z uporabo funkcijo strsep(). , ki se začne z vnaprej določenim ločilom.
- The vrvica na katero opozarja vnos stringp ta funkcija razdeli argument in deli se nato združijo v nove nize, ki se vsi končajo z ničelnim znakom.
- Vsak nov niz se začne pri naslov podan z izhodnim kazalcem in se konča tam, kjer je ločilo določil delim in strsep() Ko je ločilo najdeno, ga funkcija nadomesti z ničelnim znakom, ki označuje konec novega niza.
- The kazalec stringp se samodejno nastavi na začetek fragmenta, potem ko je odkrit ločilni znak, ko se funkcija vrne iz klica. The kazalec stringp je zdaj pripravljen za pridobitev naslednjega fragmenta v naslednjem klicu funkcije. dokler strsep() zmanjka ločil in vrne ničelni kazalec. Posledično se ta postopek ponovi za vsak klic.
Pomembno je omeniti, da ta funkcija nepreklicno spremeni vneseno besedilo tako, da ločila nadomesti ničelne znake. The glava 'string.h' vsebuje definicijo funkcijo strsep(). . V našo kodo ga moramo vključiti na naslednji način, da ga lahko uporabimo in druge funkcije upravljanja nizov:
#include
Kako uporabiti funkcijo Strsep() jezika C za razdelitev niza na več fragmentov
V tem primeru fraza 'Začnimo s programiranjem' je ustvarjen kot niz, njegova vsebina pa je razdeljena z uporabo funkcijo strsep(). . Vsak od novo ustvarjenih nizov se nato ustvari v ločeni vrstici v ukazni terminal . Niz, na katerega kaže stringp vhodni parameter je razdeljen besedo za besedo, saj je ločilo, ki ga uporabljamo v vhodnem argumentu delim presledek (' ') .
primeri stroja moore
Izjavljamo, 's_in' niz skupaj z besedilom 'Začnimo s programiranjem' in kazalec 'in_Ptr' v funkcija main(). . The stringp funkcije strsep(). vhodni argument je ta kazalec.
Kot je loči vhodni argument za metoda strsep(). in označeni ločilni znak dodatno razglasimo 'string del' s prostorskim značajem. Nato razglasimo kazalec 'o_Ptr' , ki se uporablja kot izhodni argument strsep(). . The metoda printf(). bo ta kazalec uporabil kot vhodni argument za prikaz obnovljenega fragmenta na ukazni konzoli.
gzip za linux
Po tem, po dobavi vrvice kot prvi argument je 'in_Ptr' kazalec kot drugi parameter in kazalec 'o_Ptr' kot izhodni argument imenujemo funkcijo strsep(). . Ta klic se opravi znotraj a medtem ko zanka z ubežnim pogojem, da ni več ločil, ko strsep() vrne ničelni kazalec.
Koda za ta primer je naslednja:
#include #include int main() { char s_in[50] = 'Let's start programming '; char del[20] = ' '; char* in_Ptr = s_in; char* o_Ptr; while ((o_Ptr = strsep(&in_Ptr, del)) != NULL) { printf('%s ', o_Ptr); } return 0; }
Strsep() deli 's_in' niz besedo za besedo, vsakič ustvari nov niz, ki je nato prikazan v novi vrstici v ukazni konzoli, kot je prikazano spodaj;
Izhod:
Let's start programming
Zaključek
V tem članku smo pokazali, kako obdelati nize z uporabo funkcijo strsep(). , ena od funkcij, navedenih v 'string.h' glava. Govorili smo o teoretični utemeljitvi tega sintaksa, klicna tehnika , in delovanje . Poleg tega smo prikazali vrsto podatkov, ki jih sprejme vsak vhodni in izhodni argument.