Método 1: usando a função de membro Vazio()
Uma abordagem direta e integrada em C++ para determinar se uma string está vazia envolve a utilização da função de membro “empty()”. A função “empty()” faz parte da classe de string C++ padrão e fornece uma maneira conveniente de verificar se uma string não possui caracteres.
Aqui está um exemplo simples que ilustra o uso da função vazia():
#include
#incluir
usando espaço para nome padrão ;
interno principal ( ) {
string vaziaStr ;
se ( vazioStr. vazio ( ) ) {
corte << 'A string está vazia.' << fim ;
} outro {
corte << 'A string não está vazia.' << fim ;
}
retornar 0 ;
}
Neste trecho de código C++, começamos incluindo os arquivos de cabeçalho necessários, como
No nosso caso, invocamos esta função na string “emptyStr”. Em seguida, usamos uma instrução condicional para avaliar o resultado booleano que é retornado pela função “empty()”. Se a string estiver realmente vazia, nosso programa exibirá uma mensagem que indica que a string está vazia. Por outro lado, se a string contiver caracteres, o programa exibirá uma mensagem informando que a string não está vazia.
A saída do código C++ fornecido é a seguinte:
Método 2: usando a função de membro Size()
Outra abordagem para detectar se uma string C++ está vazia envolve a utilização da função membro “size()” fornecida pela classe “string”. Ao contrário da função “empty()” que retorna diretamente um booleano que indica vazio, “size()” retorna o número de caracteres que estão presentes na string. Para verificar se há vazio, comparamos o resultado de “size()” com zero, pois uma string vazia tem tamanho zero.
Aqui está um exemplo:
#include#incluir
usando espaço para nome padrão ;
interno principal ( ) {
string minhaEmptyString ;
se ( minhaEmptyString. tamanho ( ) == 0 ) {
corte << 'A string fornecida está vazia.' << fim ;
} outro {
corte << 'A string fornecida não está vazia.' << fim ;
}
retornar 0 ;
}
Neste exemplo, começamos declarando uma variável string chamada “myEmptyString” sem inicializá-la, deixando-a vazia por padrão. Seguindo em frente, invocamos a função “size()” para determinar o tamanho ou o número de caracteres na string “myEmptyString”. A instrução “if” avalia se o tamanho é igual a zero, o que indica que a string está vazia. Se esta condição for atendida, enviamos uma mensagem para o console informando que a string fornecida está vazia. Por outro lado, se o tamanho for diferente de zero, o fluxo de controle muda para o bloco “else” e uma mensagem diferente é exibida confirmando que a string fornecida não está vazia.
Método 3: usando uma comparação com um literal de string vazio
Uma técnica adicional para determinar se uma string C++ está vazia envolve uma comparação direta com uma string literal vazia. Uma string literal vazia é representada por um par de aspas duplas sem caracteres entre elas, como “”. Podemos verificar se a string contém algum caractere comparando uma determinada string com este literal de string vazio.
Aqui está um exemplo que ilustra essa abordagem:
#include#incluir
usando espaço para nome padrão ;
interno principal ( )
{
string nome de usuário ;
corte <> nome de usuário ;
se ( nome de usuário == '' )
{
corte << 'Erro: o nome de usuário não pode estar vazio.' << fim ;
}
outro
{
corte << 'Olá, ' << nome de usuário << '! Bem-vindo à nossa plataforma.' << fim ;
}
retornar 0 ;
}
Nesse caso, lançamos um aplicativo que solicita ao usuário seu nome de usuário. O programa começa declarando uma variável de string chamada “nome de usuário” para armazenar a entrada do usuário. Posteriormente, o usuário recebe a mensagem 'Digite seu nome de usuário:' e sua entrada é capturada usando o fluxo “cin”. O programa então emprega uma instrução condicional para verificar se o nome de usuário inserido está vazio, o que é obtido comparando-o diretamente com uma string literal vazia usando o operador de igualdade (==). Se o nome de usuário estiver vazio, o programa exibirá uma mensagem de erro que afirma: 'Erro: O nome de usuário não pode estar vazio'. No entanto, se o nome de usuário não estiver vazio, o programa exibirá uma mensagem de boas-vindas personalizada que incorpora o nome de usuário inserido com a saudação 'Olá, [nome de usuário]! Bem-vindo à nossa plataforma'.
Aqui está a saída onde não fornecemos nenhum nome de usuário:
A saída quando fornecido um nome de usuário é a seguinte:
Método 4: usando um operador ternário
O operador ternário expressa concisamente uma instrução condicional em uma única linha, o que torna o código mais compacto. O operador ternário retorna um dos dois valores após avaliar a condição para ver se a string está vazia. Neste caso, podemos usar a função membro “empty()” para verificar se há vazio e empregar o operador ternário para atribuir uma mensagem correspondente.
Aqui está um exemplo ilustrativo:
#include#incluir
usando espaço para nome padrão ;
interno principal ( ) {
amostra de stringString = 'Olá Mundo!' ;
corte << 'A corda é' << ( amostraString. vazio ( ) ? 'vazio.' : 'não está vazio.' ) << fim ;
retornar 0 ;
}
Em seguida, declaramos uma variável de string chamada “sampleString” e a inicializamos com o comando “Hello, World!” contente. Utilizamos um operador ternário na instrução “cout” para determinar se a string está vazia. O operador ternário avalia a condição “sampleString.empty()”, verificando se a string está vazia, e imprime a mensagem correspondente 'A string está vazia' se a condição for verdadeira, e 'A string não está vazia' se a condição for falso. O programa termina retornando 0, o que indica uma execução bem-sucedida. A execução deste programa gera a seguinte saída:
Conclusão
Detectar se uma string C++ está vazia é fundamental para a manipulação e processamento de strings. Neste artigo, exploramos os diversos métodos, cada um com suas vantagens. A função membro “empty()” é a função mais direta e comumente usada que indica claramente o vazio de uma string. Usar “size()” oferece uma abordagem alternativa, verificando o comprimento da string. A comparação com uma string literal vazia é direta e intuitiva, enquanto os operadores ternários fornecem flexibilidade na integração da verificação em uma lógica mais complexa. As necessidades específicas do programa devem ser levadas em consideração ao selecionar a abordagem correta.