PDA

Ver la Versión Completa : Error con int: Error:loop control variable declared in the for-loop is used outside..


DarkByte
11-09-2005, 12:52:39
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:
for(i=0;puerto[i] != 0;i++) {

Uso2:
if (st + 400/i > MAX_ST) {


Y así cada vez que se usa... ¿Sabéis dónde puede encontrase el error?

Muchísimas gracias ^-^

delphi.com.ar
12-09-2005, 13:53:31
¿Dónde esta declarada i?... ¿Dentro del for? (for(int i..)) ¿Por casualidad el if esta fuera del scope del for?...

jluisx
12-09-2005, 16:56:18
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

Crandel
13-09-2005, 06:52:14
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.