Ir ao conteúdo
  • Cadastre-se

Não ta voltando o valor das variáveis corretas


juniorari
Ir à solução Resolvido por juniorari,

Posts recomendados

 

galera tenho esse código aqui (só coloquei o importante)


#include <stdio.h>#include <stdlib.h>#include <string.h>//necessário para operacoes com stringint i;char alfabeto[100][10];int qtdAlfatabeto;char posTransicao[100][10];int main() {strcpy(alfabeto[0], "1");strcpy(alfabeto[1], "0");qtdAlfatabeto = 1;posTransicao[0][0] = '0';posTransicao[1][0] = '1';int qtdTrans = 1;for (i=0;i<=qtdAlfatabeto;i++) {VerificaErro01(posTransicao[i][0]);}}//funçãovoid VerificaErro01(char verifica) {printf("alfabeto[0] = '%s'\n",alfabeto[0]);printf("alfabeto[1] = '%s'\n",alfabeto[1]);//verificar o ERRO 01//Uso de símbolos que não fazem parte do alfabeto nas transições;printf("'%c'\n",verifica);int v;int continua = 0;//verificar se os alfabetos dessa transição fazem parte dos alfabetos digitados char carac;for (v = 0; v <= qtdAlfatabeto; v++) {carac = alfabeto[v];printf("'%c'\n",carac);if (carac == verifica) {continua = 1; //encontrou, pode continuarbreak;}}if (continua == 0) {//se não encontrar nenhum, sai com erroprintf("\n\nErro 01 ;\n\n");exit(0);}}
 
 
estou fazendo um automato e parei nessa parte, quero verificar se na posicao posTransicao contem a letra do alfabeto contido no vetor alfabeto
 
ele faz a checagem mas quando chega na linha 

 

carac = alfabeto[v];

na 1. iteração ele atribui a carac um valor nulo, mesmo imprimindo mais em cima alfabeto[0], o valor correto.

Na segunda iteração alem de um espaco, ele ainda coloca uma quebra de linha (muito doido isso....)blink.png unsure.png

 
como podem ver, as duas letras contem no alfabeto, mas sempre dá o erro que não contém!
alguém que manja de C, pode me dar uma luz....sad.png blush.png
 
 

 

Link para o comentário
Compartilhar em outros sites

  • Solução

'carac' é do tipo 'char', mas 'alfabeto[v]' é um array de char.

Talvez o que você queira fazer seja:

carac = alfabeto[v][0];

Além disso eu não entendi porque você tá usando arrays de strings se você tá usando apenas caracteres.

 

cara tu é doido mesmo!!!!! :D  :aplausos:

era isso mesmo!!

ele ta array de string porque o usuario entra com uns dados em string, por isso ta array, mas depois eu trato esses valores

mas vou rever esse codigo!!

Valeu mesmo dontpanic!!!

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!