Jump to content
Fórum Script Brasil
  • 0

Code::Blocks // erro Switch / Case


Question

3 answers to this question

Recommended Posts

  • 0

Não é possível fazer isso.

Exemplo correto seria case 'a':(ou qualquer outra letra), um char não é um string. Si usar if conjuntamente com strcmp de esta forma: if ( strcmp(op, "arroz")==0 ) ...então sim. O switch somente compara chars e inteiros, para strings use if con strcomp como falei. ;)

Edited by vangodp
Link to post
Share on other sites
  • 0

Não é possível fazer isso.

Exemplo correto seria case 'a':(ou qualquer outra letra), um char não é um string. Si usar if conjuntamente com strcmp de esta forma: if ( strcmp(op, "arroz")==0 ) ...então sim. O switch somente compara chars e inteiros, para strings use if con strcomp como falei. ;)

 Obrigado.

Então que dizer que no case eu devo usar apenas um caractere? Entendi isso hehe.

O resto eu irei pesquisar. Estou iniciando ainda, falta muito pra aprender.

Link to post
Share on other sites
  • 0

Sim, Assim é! você já tentou fazer char ch = 'Alo'; ?? Si imprimir esse ch tal como printf("%c", ch), você vai perceber que que será imprimido o ultimo numero somente.
Um char ocupa um Byte da sua memória, e por isso ele somente guarda uma letra, um string é diferente, ele é um conjunto de chars(Bytes) que se encontram de forma consecutiva na memória, ou seja, esta um a continuação do outro e todos estariam juntos, porem um string se declara de deferente forma, se declara fazendo char palavra[tamanho], já o char ch tem muita diferença. Por isso seu case não vai funcionar como se fosse um string, pois um char só pode guardar uma letra apenas.
O switch é mais usado para comprovações simples, por exemplo quando você quer gerar um menu tipo... quer escolher essa opção escolha 1, quer outra opção escolha 2, ou pulse 0 para sair... Si for fazer comparações complexas melhor usar if. Falou? XD

Bay!

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      148876
    • Total Posts
      644882
×
×
  • Create New...