Funzione STRSEP nella lingua C

Funzione STRSEP nella lingua C
Le stringhe sono una parte fondamentale della programmazione perché è possibile inviare messaggi all'utente, visualizzare i risultati e leggere i file attraverso di essi. Sono anche uno dei metodi di input e output dei dati.

La gestione fluente delle stringhe e le funzioni che le elaborano è molto importante poiché le usiamo sempre in una parte del programma che sviluppiamo.

In questo articolo di Linux, imparerai come utilizzare la funzione strsep () per dividere le stringhe in base al delimitatore.

Ti mostreremo la sintassi e la descrizione teorica di chiamare il funzionamento di Strsep (), i suoi argomenti di input e output e i tipi di dati accettati per ciascuno di questi argomenti.

Quindi applichiamo ciò che abbiamo appreso negli esempi pratici che ti mostrano come implementare la funzione strsep () per frammento delle stringhe usando gli snippet e le immagini del codice.

Sintassi della funzione strsep () in linguaggio c

char *strsep (char ** limitare stringp, const char *limit delim);

Descrizione della funzione strsep () in lingua c

La funzione strsep () frammenti una stringa a partire da un delimitatore pre-set.
Questa funzione frammenti la stringa che è indicata dall'argomento di input Stringp e converte i suoi frammenti in nuove stringhe, tutte terminando con un carattere nullo.

Ogni nuova stringa inizia all'indirizzo che viene restituito nel puntatore di output e termina in cui lo strsep () incontra il delimitatore specificato in Delim. Se la funzione trova un delimitatore, lo sostituisce con un carattere nullo, segnando la fine della nuova stringa.

Quando la funzione ritorna dalla sua chiamata, il puntatore Stringp viene automaticamente impostato all'inizio del frammento, seguendo il carattere delimitatore che ha trovato. In questo modo, il puntatore Stringp è pronto per recuperare il frammento successivo nella chiamata di funzione successiva. Questo processo viene ripetuto per ogni chiamata fino a quando Strsep () non trova più delimitatori e restituisce un puntatore nullo di conseguenza.

È importante notare che questa funzione modifica irreversibilmente la stringa di input sostituendo i delimitatori con caratteri null.

La funzione strsep () è definita nella "stringa.H ”intestazione. Per usarlo e le altre funzioni di gestione delle stringhe, dobbiamo includerlo nel nostro codice come segue:

#includere

Come separare una stringa in diversi frammenti usando la funzione strsep () in linguaggio c

In questo esempio, creiamo una stringa che contiene il "Oggi è un grande giorno per la programmazione"Frase e usa la funzione strsep () per frammento del contenuto e produrre ciascuna delle stringhe appena ottenute su una nuova riga nella console di comando.

Il delimitatore che utilizziamo nell'argomento di input delim è il carattere spaziale (““), quindi la stringa che è indicata dall'argomento di input Stringp è frammentata per parola.

Nella funzione principale (), dichiariamo la stringa "s_in" con "Oggi è un grande giorno per la programmazione"Frase e puntatore" in_ptr ". Questo puntatore è l'argomento di input Stringp della funzione strsep ().

Dichiariamo anche la "stringa del" con il carattere spaziale che è l'argomento input delim della funzione strsep () e il carattere delimitatore assegnato.

Infine, dichiariamo il puntatore "O_PTR" che funge da argomento di output di STRSEP (). Questo puntatore punta al frammento recuperato e funge da argomento di input per la funzione printf () per visualizzarlo sulla console di comando.

Successivamente, chiamiamo la funzione strsep () passando il puntatore "in_ptr" come primo argomento, la stringa Del come secondo argomento e il puntatore "O_PTR" come argomento di output.

Questa chiamata è fatta in un giro di un tempo in cui la condizione di fuga è che strsep () restituisce un puntatore nullo, il che significa che non ci sono più delimitatori.

Ecco il codice per questo esempio:

#includere
#includere
void main ()

char s_in [50] = "Oggi è un grande giorno per la programmazione";
char del [20] = "";
char* in_ptr = s_in;
charr* o_ptr;
while (o_ptr != Null)
o_ptr = strSep (& in_ptr, del);
printf ("%s \ n \ n", o_ptr);

Come visto nella figura seguente, strsep () separa la parola "s_in" per parola, creando una nuova stringa ogni volta, ciascuna visualizzata su una nuova riga nella console del comando:

Conclusione

In questo articolo di Linux, ti abbiamo mostrato come utilizzare la funzione strsep () che è una delle funzioni definite nella "stringa.H ”intestazione per elaborare le corde.

Abbiamo discusso della spiegazione teorica della sua operazione, della sua sintassi e del suo metodo di chiamata. Ti abbiamo anche mostrato gli argomenti di input e output e il tipo di dati che ciascuno accettano.

Per aiutarti a capire come funziona questa funzione, abbiamo anche esaminato un esempio pratico in cui ti abbiamo mostrato come dichiarare i puntatori necessari che vengono utilizzati come argomenti di input e output per questa funzione usando i frammenti di codice e gli snippet che sono spiegati passo-by- Passaggio, insieme al metodo della chiamata.