logo

Função Strsep() em C

Introdução:

Cordas são um componente essencial programação , porque permitem a comunicação com usuários, mostrar resultados e ler arquivos . Eles são um tipo de mecanismo de entrada e saída de dados. Desde cordas são constantemente usados ​​de alguma forma nos programas que criamos, o manuseio eficiente de strings e as funções que as processam são cruciais.

Este tutorial vai te ensinar como dividir textos dependendo dos delimitadores usando o Método strsep() .

Iremos passar por cima entrada e argumentos de saída para strsep() , isso é sintaxe e explicação teórica e os tipos de dados permitidos para cada um desses argumentos.

A seguir, colocamos em prática o que aprendemos usando trechos de código e gráficos para fragmentar strings usando o método Método strsep() , o que é demonstrado nos exemplos práticos.

Sintaxe da função Strsep() na linguagem C:

 char *strsep(char **restrict stringp, const char *restrict delim); 

Uma explicação da função Strsep() em C:

  • A corda é dividido usando o função strsep() , começando com um delimitador pré-determinado.
  • O corda apontado pelo entrada stringp O argumento é dividido por esta função e as partes são então combinadas para formar novas strings que terminam com o caractere nulo.
  • Cada nova string começa no endereço dado pelo ponteiro de saída e termina onde o delimitador especificado por eu compartilho e strsep() Quando um delimitador é encontrado, a função o substitui por um caractere nulo para indicar o fim da nova string.
  • O ponteiro stringp é definido automaticamente no início do fragmento após o caractere delimitador ser descoberto quando a função retorna de sua chamada. O ponteiro stringp agora está preparado para obter o próximo fragmento na seguinte chamada de função. Até strsep() fica sem delimitadores e retorna um ponteiro nulo. Como resultado, este processo é repetido para cada chamada.

É significativo notar que esta função altera o texto de entrada irrevogavelmente, substituindo os delimitadores por caracteres nulos. O cabeçalho 'string.h' contém a definição do função strsep() . Devemos incorporá-lo em nosso código da seguinte maneira para usá-lo e às outras funções de gerenciamento de strings:

 #include 

Como usar a função Strsep() da linguagem C para dividir uma string em vários fragmentos

Neste exemplo, a frase 'Vamos começar a programar' é criado como uma string e seu conteúdo é dividido usando o função strsep() . Cada uma das strings recém-criadas é então produzida em uma linha separada no terminal de comando . A corda apontada pelo corda O parâmetro de entrada é dividido palavra por palavra, pois o delimitador que usamos no argumento de entrada delim é o caractere de espaço (' ') .

java lendo csv

Nós declaramos o 'pecado' string junto com o texto 'Vamos começar a programar' e a Ponteiro 'in_Ptr' no função principal . O stringp da função strsep() argumento de entrada é este ponteiro.

Enquanto o delimitar argumento de entrada para o Método strsep() e o caractere delimitador designado, declaramos adicionalmente o 'string del' com o caractere de espaço. A seguir declaramos o Ponteiro 'o_Ptr' , que é usado como Argumento de saída de strsep() . O método printf() usará este ponteiro como argumento de entrada para exibir o fragmento recuperado no console de comando.

Depois disso, após fornecer o da corda como primeiro argumento, o 'in_Ptr' ponteiro como o segundo parâmetro, e o Ponteiro 'o_Ptr' como argumento de saída, chamamos função strsep() . Esta chamada é feita dentro de um enquanto loop com a condição de escape de que não há mais delimitadores quando strsep() retorna um ponteiro nulo.

O código para este exemplo é o seguinte:

número para string java
 #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() divide o 'pecado' string palavra por palavra, produzindo uma nova string a cada vez, que é então exibida em uma nova linha no console de comando, conforme mostrado abaixo;

Saída:

 Let's start programming 

Conclusão

Neste artigo, demonstramos como processar strings usando o função strsep() , uma das funções especificadas no 'string.h' cabeçalho. Conversamos sobre a justificativa teórica para sua sintaxe, técnica de chamada , e Operação . Além disso, demonstramos o tipo de dados que cada argumento de entrada e saída aceita.