Usuário com melhor resposta
qual a melhor forma de verificar se uma string é nula?

Pergunta
-
Respostas
-
Olá William,
Como assim verificar se é nula?
Um char nome[100] é um buffer com 100 bytes alocado na pilha (stack), e nunca pode ser nulo.
Agora, se o seu objetivo é saber se o buffer está vazio (sem caracteres lá dentro), então pode utilizar a função strlen, que serve para retornar a número de caracteres existentes:
Code Snippet// A string está vazia?
if (strlen(nome) == 0)
{
// Sim.
}
// ...
// A string tem 15 caracteres?
if (strlen(nome) == 15)
{
// Sim.
}
// ...
Abraços,
Caio Proiete
Caio Proiete
http://www.caioproiete.com -
William,
Você pode resolver assim também:
Você pode verificar se a primeira célula do vetor nome é igual a '\0' que é um caracter finalizador de cadeia, ele indica o final da cadeia de caracteres. Se este caracter que indica o final estiver na primeira célula, logo essa cadeia está vazia.
if( nome[0] == '\0' )
// Vazio
O funcionamento do strlen como mencionado pelo Caio verifica todo o array até encontrar o '\0' e retorna a quantidade de caracteres encontrados até o '\0' exceto ele.
Todas as Respostas
-
Olá William,
Como assim verificar se é nula?
Um char nome[100] é um buffer com 100 bytes alocado na pilha (stack), e nunca pode ser nulo.
Agora, se o seu objetivo é saber se o buffer está vazio (sem caracteres lá dentro), então pode utilizar a função strlen, que serve para retornar a número de caracteres existentes:
Code Snippet// A string está vazia?
if (strlen(nome) == 0)
{
// Sim.
}
// ...
// A string tem 15 caracteres?
if (strlen(nome) == 15)
{
// Sim.
}
// ...
Abraços,
Caio Proiete
Caio Proiete
http://www.caioproiete.com -
William,
Você pode resolver assim também:
Você pode verificar se a primeira célula do vetor nome é igual a '\0' que é um caracter finalizador de cadeia, ele indica o final da cadeia de caracteres. Se este caracter que indica o final estiver na primeira célula, logo essa cadeia está vazia.
if( nome[0] == '\0' )
// Vazio
O funcionamento do strlen como mencionado pelo Caio verifica todo o array até encontrar o '\0' e retorna a quantidade de caracteres encontrados até o '\0' exceto ele. -