TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: AcoranTf en 26 de Noviembre de 2013, 18:41:31

Título: ¿Como se delimita el campo de actuacion de un bucle FOR en CCS? SOLUCIONADO
Publicado por: AcoranTf en 26 de Noviembre de 2013, 18:41:31
Tengo una duda con la forma en que puedo delimitar el campo en que deja de actuar el bucle FOR.
Si tengo un programa donde incluyo dicho bucle, tras la declaracion pongo las sentencias a ejecutar dentro del FOR y a continuacion las que deberian quedar fuera de aquel, pero ¿como sabe CCS donde acaba realmente el alcance del FOR?. No me refiero al numero de veces que se repite, eso lo tengo claro. Me refiero a hasta que linea se considera dentro del FOR.
Un ejemplo (http://www.yaitana.es/temp/Meteoro.c) dejara mas clara mi consulta.

Saludos.
Título: Re: ¿Como se delimita el campo de actuacion de un bucle FOR en CCS?
Publicado por: RALF2 en 26 de Noviembre de 2013, 18:55:38
Leete la ayuda del CCs alli aparece explicado  :mrgreen:
Pero te adelanto, las llaves ( {,} )son las que indican el inicio y final del for   :mrgreen:

for (i=0 ; i> 10 ; i++)
{
   aqui va el codigo

}
Título: Re: ¿Como se delimita el campo de actuacion de un bucle FOR en CCS?
Publicado por: AcoranTf en 26 de Noviembre de 2013, 19:11:31
Leete la ayuda del CCs alli aparece explicado  :mrgreen:
Pero te adelanto, las llaves ( {,} )son las que indican el inicio y final del for   :mrgreen:

for (i=0 ; i> 10 ; i++)
{
   aqui va el codigo

}


Muchas gracias RALF2. Me confundio precisamente la ayuda del CCS, donde al utilizar solo una linea de sentencias como ejemplo, no pusieron las llaves.
Solucionado.

Saludos.
Título: Re: ¿Como se delimita el campo de actuacion de un bucle FOR en CCS? SOLUCIONADO
Publicado por: RALF2 en 26 de Noviembre de 2013, 19:39:22
De nada amigo  :mrgreen:
Tambien hay otra forma si solo vas a ejecutar dentro del bucle "una instruccion", asi:

for (i=0 ; i> 10 ; i++)
    printf( "%u ",i);      // imprime los caracteres del 0 al 10
delay_ms(100);         // esta instruccion se ejecuta despues que halla terminado el bucle for

Saludos
Título: Re: ¿Como se delimita el campo de actuacion de un bucle FOR en CCS? SOLUCIONADO
Publicado por: BrunoF en 26 de Noviembre de 2013, 21:32:19
De nada amigo  :mrgreen:
Tambien hay otra forma si solo vas a ejecutar dentro del bucle "una instruccion", asi:

for (i=0 ; i> 10 ; i++)
    printf( "%u ",i);      // imprime los caracteres del 0 al 10
delay_ms(100);         // esta instruccion se ejecuta despues que halla terminado el bucle for

Saludos

Podríamos ser aún más malditos y escribir algo así:

for (i=0 ; i> 10 ; i++)
    printf( "%u ",i); delay_ms(100);

Aún escrito de esa manera, se mantiene que sólo se ejecuta la primera instrucción hasta encontrar el ;(punto y coma). La otra instrucción se ejecutará una vez finalizado el for.

Saludos.