Ir para o conteúdo
magikRing

erro na inicializacao da variavel por causa do case

Mensagens Recomendadas

magikRing    0
magikRing

boas...entao o meu problema e o seguinte:

  eu tenho este case:

switch(escolha) 
{
    case 1:
	int n=lertexto(texto);
    codificartexto(texto,n);
	mostrartexto(texto,n);        
        break;
    case 2 :
	int s=lertexto(texto);
    descodificartexto(texto,s);
	mostrartexto(texto,s);
	break;

e quando tento correr da.me o seguinte erro  "error C2360: initialization of 'n' is skipped by 'case' label"

e aponta para o "case 2"

  se eu tirar o case 2 ele ja funciona. alguem sabe o problema?

se for preciso meter o resto do codigo avisem.

obrigado

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
magikRing    0
magikRing

nao posso fazer isso por o meu 'n' vem daqui:

int lertexto(char texto[][80])
{
int linha=0;
puts ("Digite o texto - prima end para acabar\n");
fflush(stdin);
gets(texto[linha]);
while(linha <10 && strcmp(texto[linha],"end")!=0) 
{
	linha++;
	gets(texto[linha]);
}
return linha;
}

ou seja, quando eu escolho a opcao no menu quero que ele comece logo a fazer a funcao ler texto

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Hipnoted    6
Hipnoted

Eu vou reformular.

int n, s;

switch(escolha)
{
    case 1:
      n=lertexto(texto);
       codificartexto(texto,n);
      mostrartexto(texto,n);       
        break;
    case 2 :
      s=lertexto(texto);
       descodificartexto(texto,s);
      mostrartexto(texto,s);
      break;

Tens de declarar antes, mas depois podes usar a variável igual.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade