FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Error con int: Error:loop control variable declared in the for-loop is used outside..
Buenas.
Esto no tiene que ver exactamente con C++ Builder, pues uso Microsoft Visual C++... pero vamos, ahí va... Tengo un problema con la variable i (un indice int). Creo que es la manera de usarla, la cogí de un código de ejemplo que tenía por aquí y creo que está mal el uso, me gustaría que me aconsejáseis. El error que me suelta en cada uso es: c:\lab\others\examples\jhon.cpp(1389): warning C4288: nonstandard extension used : 'i' : loop control variable declared in the for-loop is used outside the for-loop scope; it conflicts with the declaration in the outer scope jhon.cpp(1372) : definition of 'i' used jhon.cpp(370) : definition of 'i' ignored Uso1: Código:
for(i=0;puerto[i] != 0;i++) { Código:
if (st + 400/i > MAX_ST) { Y así cada vez que se usa... ¿Sabéis dónde puede encontrase el error? Muchísimas gracias ^-^
__________________
:) Última edición por DarkByte fecha: 11-09-2005 a las 12:56:48. Razón: para meterle las etiquetas Code... que no falte de na :) |
#2
|
||||
|
||||
¿Dónde esta declarada i?... ¿Dentro del for? (for(int i..)) ¿Por casualidad el if esta fuera del scope del for?...
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#3
|
|||
|
|||
DarkByte
Creo que deberias verificar lo que dice Federico, ya que el problema puede ser que la variable este declararada en un ambito no adecuado o peor aun que no este declarada.......hecha un vistazo nuevamente a tu codigo |
#4
|
||||
|
||||
Realmente fijate bien donde esta declarada la variable i.
Es altamente recomendable que las variables de control del ciclo for no sean usadas fuera de ciclo for, este se debe a que en general los compiladores saben aprovechar este hecho para generar código más rápido, dado que se guarda el contenido de esta variable en uno de los registros internos del micro y no en la memoria RAM.
__________________
[Crandel] |
|
|
|