string functions c
Neste tutorial, discutiremos algumas das funções de string populares em C ++, como substring getline, comprimento de string, encontrar string, dividir string etc .:
C ++ tem uma classe de string que é usada para uma sequência de caracteres que também é conhecida como strings. Esta classe é std :: string . Esta classe armazena as strings como uma sequência de bytes de caracteres e fornece funções que nos permitem manipular, acessar e ler as strings, bem como acessar e manipular caracteres únicos.
como abrir um arquivo torrent no windows
=> Visite aqui para obter o curso C ++ completo com especialistas.
O que você aprenderá:
Funções de string C ++
A string C ++ é uma sequência de caracteres. Quando definimos strings em C ++, usamos uma string
palavra-chave que nada mais é do que classe std :: string. Esta classe de string suporta várias funções de leitura, manipulação, acesso a strings, etc. que realizam diferentes operações em objetos string. Algumas funções usadas com frequência estão listadas abaixo-
Não | Funções de string | Descrição |
---|---|---|
1 | Obter linha | Pega a linha do fluxo para a string |
dois | substr | Obtenha uma substring de uma determinada string |
4 | Comprimento, strlen | Obtenha o comprimento da corda |
5 | Encontrar | Encontre conteúdo na sequência |
6 | Strtok, substr com delimitador | Dividir string em tokens |
getline C ++
Protótipo de função: istream & getline (istream & is, string & str)
Parâmetro (s): is => istream objeto do qual os caracteres são extraídos.
str => Objeto String que é usado para armazenar caracteres extraídos.
Valor de retorno: O valor de retorno é o mesmo que istream. Internamente, a execução do getline define certos sinalizadores internos como segue.
bandeira | Descrição de erro |
---|---|
eofbit | Fim da fonte do personagem alcançado |
failbit | A entrada não pode ser interpretada como uma representação textual válida do objeto deste tipo |
badbit | Qualquer outro erro, exceto os dois acima |
Descrição: getline é uma função de biblioteca padrão. Esta função é usada para ler uma linha ou string de um fluxo de entrada padrão como istream. As linhas ou strings são lidas até que “ n”, que é considerado um caractere de delimitação, seja encontrado.
Como uma versão diferente de getline, um terceiro parâmetro “char delim” pode ser especificado. Este é um caractere delimitador especificado explicitamente. Nesta função, uma linha de texto ou string será lida até que o caractere delimitador especificado seja encontrado.
A seguir, é fornecido um exemplo simples para demonstrar o uso de getline.
Exemplo:
#include #include using namespace std; int main() { string mystr; cout<<'Enter the input string:'< Resultado:
Insira a string de entrada:
Tutoriais C ++
Você digitou: tutoriais C ++

No exemplo acima, lemos uma string de entrada usando a função getline. Observe que as strings ou texto inserido são lidos no objeto string mystr até que ‘ n’ seja encontrado.
Substr C ++
Protótipo de função: string substr (size_t startpos, size_t endpos)
Parâmetro (s): startpos => Posição inicial de onde a substring deve ser extraída.
endpos => Posição final da substring.
Valor de retorno: Retorna uma string que é uma substring da string pai.
Descrição: Esta função retorna uma substring de uma determinada string. A função assume as posições inicial e final como parâmetros e, em seguida, retorna a sequência de caracteres entre essas posições.
Exemplo:
#include #include using namespace std; int main() { string mystr = 'SoftwareTestingHelp'; string mysub = mystr.substr(0,8); cout<<'Input string : '< Resultado:
String de entrada: SoftwareTestingHelp
Substring (0,8): Software

Comprimento C ++
O comprimento da string é o número de caracteres presentes na string. A representação do objeto std :: string de strings em C ++ usa as funções length () para retornar o comprimento da string.
Além disso, também temos um método de tamanho que retorna o tamanho da string. Usamos o método size no exemplo mostrado abaixo para a função length (). Outra função que retorna o comprimento da string é ‘strlen’. Esta função retorna o comprimento da string denotada por uma matriz de caracteres.
Veremos ambas as funções, uma a uma, com exemplos.
comprimento()
qual é o melhor email grátis
Protótipo de função: size_t length ()
Parâmetro (s): Chamado pela string cujo comprimento deve ser descoberto.
Valor de retorno: Retorna um parâmetro de tipo size_t que é o comprimento da string.
Descrição: Esta função encontra o comprimento do objeto string pelo qual é chamada.
Exemplo:
#include #include using namespace std; int main() { string mystr = 'SoftwareTestingHelp'; cout<<'Input string : '< Resultado:
String de entrada: SoftwareTestingHelp
O comprimento da string (com método de comprimento) é: 19
O tamanho da string (com o método size) é: 19

No programa acima, usamos as funções de comprimento e tamanho de std :: string que retorna o comprimento e o tamanho do objeto string, respectivamente. Como o comprimento e o tamanho retornam o número de caracteres na string, obtemos a mesma saída.
strlen ()
Protótipo de função: tamanho_t strlen (const char * str);
Parâmetro (s): str => Ponteiro para uma string terminada em nulo cujo comprimento deve ser descoberto.
Valor de retorno: R eturns size_t value denotando o comprimento da string str.
Descrição: A função strlen () retorna o comprimento da string terminada em nulo. A string que é tomada como parâmetro pela função strlen é uma matriz de caracteres terminada em nulo.
Exemplo:
#include #include using namespace std; int main() { char mystr1() = 'This a our first string'; char mystr2() = 'This is our second string'; int len_mystr1 = strlen(mystr1); int len_mystr2 = strlen(mystr2); cout << 'Length of mystr1 = ' << len_mystr1 << endl; cout << 'Length of mystr2 = ' << len_mystr2 << endl; if (len_mystr1> len_mystr2) cout << 'mystr1 is longer than mystr2'; else if (len_mystr1 < len_mystr2) cout << 'mystr2 is longer than mystr1'; else cout << 'mystr1 and mystr2 are equal in length'; return 0; }
Resultado:
Comprimento de mystr1 = 23
Comprimento de mystr2 = 25
mystr2 é maior que mystr1

No programa acima, definimos duas strings diferentes e encontramos seu comprimento individual usando a função strlen. Em seguida, comparamos o comprimento das duas cordas e determinamos se as cordas são iguais ou desiguais.
C ++ Find
Protótipo de função: size_t find (string mysub)
Parâmetro (s): mysub => objeto String a ser encontrado dentro da string pai.
Valor de retorno: size_t => Primeira posição da substring na string pai
Descrição: A função find da string é usada para encontrar a posição da substring na string pai. Esta função é chamada pela string pai e uma substring cuja posição deve ser encontrada é passada como um parâmetro. Se a substring não estiver presente, uma posição vazia será retornada.
Exemplo:
#include #include using namespace std; int main() { string mystr = 'SoftwareTestingHelp'; string mysub = 'Test'; size_t pos = mystr.find(mysub); if (pos != string::npos) cout << 'First occurrence of string '< Resultado:
Primeira ocorrência do teste de string: 8
Primeira ocorrência da string Help: 15

Este programa define uma string como “SoftwareTestingHelp”. Usando a função find, encontramos a primeira ocorrência da string “Teste” na string pai. A seguir, encontramos a ocorrência da string “Ajuda”. A saída é a posição de ocorrência da string pesquisada.
Split String
Dividir uma string usando um delimitador ou token é uma operação útil. Em C ++, como temos mais de uma representação de strings, podemos usar diferentes abordagens para dividir uma string. Aqui, discutiremos duas abordagens para dividir uma string.
Dividindo objeto std :: string
A abordagem mais fácil para dividir um objeto de string é usar a função ‘substr’ no objeto e fornecer o delimitador como a posição final para que obtenhamos a substring. Dessa forma, podemos dividir a string no delimitador até percorrermos toda a string.
Vejamos o exemplo abaixo que primeiro encontra a posição do delimitador usando a função ‘encontrar’ e, em seguida, encontra a substring e, finalmente, gera cada um dos tokens.
#include #include using namespace std; int main() { string mystr = 'This_is_software_testing_help'; string delimiter = '_'; size_t pos = 0; string token; while ((pos = mystr.find(delimiter)) != std::string::npos) { token = mystr.substr(0, pos); cout << token << endl; mystr.erase(0, pos + delimiter.length()); } cout << mystr<< endl; }
Resultado:
este
é
Programas
testando
Socorro

Conforme mostrado no programa acima, especificamos um delimitador que será usado para dividir a string fornecida. Em um loop, encontramos repetidamente a ocorrência do delimitador usando a função find e passamos para a função substr e recuperamos a substring. Então, cada um desses tokens obtidos é exibido como saída.
Dividindo a matriz de caracteres usando a função strtok
Outra forma de tokenizar uma string (dividir a string usando um delimitador) é usando a função ‘strtok’. Discutiremos os detalhes da função ‘strtok’ abaixo.
Protótipo de função: char * strtok (char str (), const char * delim)
Parâmetro (s): str () => String a ser dividida.
Delim => Delimitador no qual a string deve ser dividida.
Valor de retorno: Retorna o próximo token após dividir a string pai.
Descrição: A função strtok divide a string fornecida em tokens em determinados delimitadores. Esta função precisa ser chamada em um loop para que possamos obter todos os tokens para uma determinada string. Quando não houver mais tokens restantes, a função retornará nulo.
Exemplo:
como posso abrir o arquivo xml
#include #include using namespace std; int main() { char mystr() = 'This_is_software_testing_help'; char *token = strtok(mystr, '_'); while (token != NULL) { cout< Resultado:
este
é
Programas
testando
Socorro

Observe que, neste programa, usamos a função strtok, que recebe uma string e um delimitador como argumentos. Em seguida, ele divide a string no token, com base no delimitador especificado e exibe os tokens individuais.
Conclusão
Vimos algumas das funções gerais importantes usadas para strings C ++ neste tutorial.
Discutimos as funções para ler uma string de entrada, encontrar uma string, substring da string pai, comprimento da string, dividir uma string, etc. junto com suas variações. Essas funções nos ajudam a ler e manipular strings de forma eficiente.
Em nosso próximo tutorial, veremos algumas das funções de conversão usadas com string C ++ em detalhes.
=> Visite aqui para ver toda a série de treinamento C ++ para todos.
Leitura recomendada
- Funções de string Python
- Tutorial Java String com String Buffer e String Builder
- Funções de conversão de caracteres C ++: char para int, char para string
- Funções VBScript String: funções VBScript inStr, Replace, Mid e Trim
- Tutorial de divisão de string em Python
- Tutorial de string C # - Métodos de string com exemplos de código
- Funções Python
- String Array C ++: Implementação e Representação com Exemplos