• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Wasted

Não entra no for

2 mensagens neste tópico

Boas, estou a desenvolver um programa mas ainda mal fiz alguma coisa e ja me da problemas :S. Queria testar se ele passa o conteudo de um vector para uma matriz, mas nao me entra no For..não entendo pq :S

#include<iostream>

using namespace std;

int main() {
    char s[100],s1[100][100];
    int i;
    
    cin>>s;
    
    for(i=0;s[i]<'\0';i++) {
      num++;
      s1[0][i]=s[i];
      cout<<s1[0][i];
      cout<<"entra";
    }
    cin>>i;
    
    
}

EDIT: esquecam ja vi o erro..sorry  pelo topic desnecessario :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Enganaste-te na condição de paragem.  '\0' tem o código ascii 0, os caracteres de uma string lida nunca são inferiores a 0, por isso o ciclo para antes de efectuar qualquer iteração.

Podes usar 

for( i = 0 ; s[i] != '\0' ; i++ )

ou simplesmente

for( i = 0 ; s[i] ; i++ )

porque é a mesma coisa que testar se  s[ i ] é verdadeiro , ou seja , diferente de 0.

0

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