Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda simples com programa em C


Arthur Alencar

Pergunta

________________________

#include <stdio.h>

int main ()

{

char *nome;

printf("Digite seu primeiro nome: ");

gets(nome);

if(nome=='jack')

{

printf ("\n\nYES\n\n");

}

else

{

printf("\n\nNO\n\n");

}

return(0);

}

_________________________

qual o erro acima?

já muuuuito tempo que não programo em C e eu estava tentando fazer um programinha simples, mas estou fazendo algo errado

eu sei que se eu fizer da maneira abaixo da certo, mas quero entender porque da maneira acima esta dando errado, alguém me da esse help ai rapidinho?

valeu!

#include <stdio.h>

int main ()

{

char *nome;

printf("Digite seu primeiro nome: ");

gets(nome);

if((nome[0]=='j') && (nome[1]=='a') && (nome[2]=='c') && (nome[3]=='k') && (nome[4]==''))

{

printf ("\n\nYES\n\n");

}

else

{

printf("\n\nNO\n\n")

}

return(0);

}

n sei porque o barra zero n ta aparecendo ali no nome[4], lol

eu edito e n funciona, enfim

o nome[4] é igual barra zero (fim da string)

Editado por Arthur Alencar
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

porque você esta declarando um ponteiro, um ponteiro armazena uma posição da memoria e não a variavel em si. * == ponteiro.

Para armazenar uma cadeia de caracteres, deve-se utilizar ponteiro e alocar memoria.

char * nome = (char) (malloc sizeof(char) * 10); // 10 posicoes

ai sim você pode receber

ou então alocar direto sem ser por ponteiro

char nome[10];

2. não da para comparar strings com o operador ==, ou voce faz um laco e compara caractere a caractere, ou usa funcoes prontas como a strcmp da string.h

no mais é so, falou

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...