elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Pequeña duda de este parámetro del for.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Pequeña duda de este parámetro del for.  (Leído 2,986 veces)
anonimo12121


Desconectado Desconectado

Mensajes: 1.813


Ver Perfil WWW
Pequeña duda de este parámetro del for.
« en: 30 Marzo 2011, 11:54 am »

Hola quisiera saber que es lo que compara el segundo parámetro del for.

Código
  1. int main(int argc,char *argv[]){
  2.    char a[100];
  3.    gets(a);
  4.    for(int i=0;a[i];i++){
  5.        if(a[i]==' ')a[i]='_';
  6.    }
  7.    puts(a);
  8.    cin.get();
  9.    return 0;
  10. }


En línea

Página para ganar Bitcoins y Dinero: http://earnbit.hol.es/
Video de YouTube con Hack para el LoL: http://adf.ly/5033746/youtube-lolemuhack
Si quieres ganar dinero con adfly entra y registrate aquí -> http://adf.ly/?id=5033746
d00ze13

Desconectado Desconectado

Mensajes: 78


Ver Perfil
Re: Pequeña duda de este parámetro del for.
« Respuesta #1 en: 30 Marzo 2011, 13:35 pm »

pues creo que es que te hace el bucle mientras a contenga i
y como cuando el bucle llega al final de la cadena introducida hace que a contenga una barra baja con lo cual se sale del bucle porque a ya no va a contener un numero sino que tendra una baarra baja
nose si me explique bien xd


« Última modificación: 30 Marzo 2011, 13:41 pm por d00ze13 » En línea

d00ze13

Desconectado Desconectado

Mensajes: 78


Ver Perfil
Re: Pequeña duda de este parámetro del for.
« Respuesta #2 en: 30 Marzo 2011, 13:40 pm »

por ejemplo si introduces la cadena hola, va a hacer esto
i=0;i[0];i++  // h
i=0;i[1];i++  // o
i=0;i[2];i++  // l
i=0;i[3];i++  // a

i=0;i[_];i++  // la barra baja y se sale del bucle ya que no cumple la condicion de que sea un entero
En línea

Saberuneko


Desconectado Desconectado

Mensajes: 2.194



Ver Perfil WWW
Re: Pequeña duda de este parámetro del for.
« Respuesta #3 en: 30 Marzo 2011, 14:46 pm »

El segundo parametro es la condicion de repetición. Basicamente, tal como aparece ahora, recorre el vector "a", siendo "i" la posición actual del mismo, tal como está, solo pararía con valor "0". (ya que C no tiene variables lógicas (booleanas), eso significa que el bucle parará cuando se encuentre con un "0" en el vector). <<Para C, todo es true, excepto el "0" que es considerado false>>

Dentro del bucle, lo que se hace, es sustituir los espacios en blanco " " por "_" según se encuentran.
En línea

anonimo12121


Desconectado Desconectado

Mensajes: 1.813


Ver Perfil WWW
Re: Pequeña duda de este parámetro del for.
« Respuesta #4 en: 30 Marzo 2011, 14:51 pm »

Estaría bien ponerlo así?
Código
  1. #include <iostream>
  2. #include <sstream>
  3. using namespace std;
  4. int main(int argc,char *argv[]){
  5.    char a[100];
  6.    gets(a);//Leer lo que escribes y lo almacena en la variable
  7.    for(int i=0;a[i]!=0;i++){
  8.        if(a[i]==' ')a[i]='_';
  9.    }
  10.    puts(a);//muestra el contenido de la variable en la pantalla
  11.    cin.get();
  12.    return 0;
  13. }
En línea

Página para ganar Bitcoins y Dinero: http://earnbit.hol.es/
Video de YouTube con Hack para el LoL: http://adf.ly/5033746/youtube-lolemuhack
Si quieres ganar dinero con adfly entra y registrate aquí -> http://adf.ly/?id=5033746
D4RIO


Desconectado Desconectado

Mensajes: 1.004


U N I X


Ver Perfil WWW
Re: Pequeña duda de este parámetro del for.
« Respuesta #5 en: 30 Marzo 2011, 15:42 pm »

También podrías decir que esto es válido:

Código
  1. int i=0;
  2.  
  3. if (0!=(i==0))

Lo que no significa que sea legible o simple, dejalo como estaba y recuerda que esta evaluando si ese caracter existe, o hay un cero en su lugar.
En línea

OpenBSDFreeBSD
Saberuneko


Desconectado Desconectado

Mensajes: 2.194



Ver Perfil WWW
Re: Pequeña duda de este parámetro del for.
« Respuesta #6 en: 31 Marzo 2011, 09:03 am »

Si, tal como estaba, hacía exactamente lo mismo. Ya que las condiciones fijadas en los bucles siempre siguen las reglas cierto falso, por tanto, siempre que no sea "0" o ningún carácter, va a ser cierto, y continuar con el bucle.

De todos modos, sigue siendo correcto ponerlo de esa otra forma.
En línea

anonimo12121


Desconectado Desconectado

Mensajes: 1.813


Ver Perfil WWW
Re: Pequeña duda de este parámetro del for.
« Respuesta #7 en: 31 Marzo 2011, 10:18 am »

OK ya se me a quedado claro el código lo cambie para entenderlo bien.
En línea

Página para ganar Bitcoins y Dinero: http://earnbit.hol.es/
Video de YouTube con Hack para el LoL: http://adf.ly/5033746/youtube-lolemuhack
Si quieres ganar dinero con adfly entra y registrate aquí -> http://adf.ly/?id=5033746
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda sobre parametro post
PHP
wizache 3 1,926 Último mensaje 6 Agosto 2007, 10:14 am
por Sanjuu
Insertar pequeña función en este código
Programación C/C++
Soir 2 2,459 Último mensaje 30 Agosto 2010, 15:23 pm
por MazarD
problemas metodo con parametro (solucionado) era sin parametro XD
Java
rub'n 6 6,943 Último mensaje 25 Noviembre 2010, 16:45 pm
por Afsoon
duda del parametro -d en iptables
Seguridad
sancakoky 2 2,610 Último mensaje 23 Marzo 2012, 12:12 pm
por adastra
Una pequeña consulta sobre este PC
Hardware
Wickown 1 1,743 Último mensaje 21 Marzo 2014, 22:31 pm
por crazykenny
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines