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

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Problema con variable
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con variable  (Leído 4,107 veces)
kraszic

Desconectado Desconectado

Mensajes: 277


Ver Perfil
Problema con variable
« en: 1 Agosto 2008, 13:00 pm »

Buenas, tengo unas dudas con las variables...
Me gustaria saber si puede poner una variable dentro de otra variable.

Ahora pongo el codigo q tengo y lo explico mas o menos.

Código:
set ini=0
:bucle
set /a ini=%ini%+1
if %ini%==20 goto fin
set var%ini%=%ini%prueba
echo %var%ini%%
goto bucle
:fin
pause>nul

Esto es solo un ejemplo. Lo q quiero conseguir es definir variables mediante un bucle asi; var1, var2, var3, var4, var5

La otra duda es en la linia:
Código:
echo %var%ini%%
ya que no se como tengo q imprimir la variable generada arriba.
Es posible hacer tdo esto??

En fin, a ver si me e explicado bien

saludos

PD: No intenteis entender el codigo porq lo he puesto sin pensar, solo para exponer la duda q tenia.


En línea

^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: Problema con variable
« Respuesta #1 en: 1 Agosto 2008, 14:53 pm »

No se en que lenguaje harias eso, pero si, es posible asignar valor a variables distintos valores digo a la misma variable dentro de un bucle. Por ejemplo ;;

Código:
main(void)
{
int a, b, c;

for (a=0;a<4;a++) {
b = a;
c = a+1;
  fprintf(stdout, "%i %i\n", b, c);
}
return 0;
}

Eso es en C, use un for como bucle hasta el 4, como veras tengo 3 variables enteras, donde uso la primera como contador del bucle, y se la voy asignando tanto a la variable b, como a la variable c sumandole un 1. Cada vez que se imprima con el printf que vez dentro del bucle, saldra esto ::

bash-3.1$ ./a.out
0 1
1 2
2 3
3 4


Donde la primera file corresponde a b, y la segunda a c. Vez como van cambiando los valores de las variables dentro del bucle? no se si mas o menos esto es lo que andas buscando, pero asignar valor a variables dentro de un bucle es posible.


En línea

kraszic

Desconectado Desconectado

Mensajes: 277


Ver Perfil
Re: Problema con variable
« Respuesta #2 en: 1 Agosto 2008, 15:38 pm »

Se me olvido especificar q mi duda era en batch.

Pero de todas formas no es eso lo q busco, mi intencion no es modificar el valor de la variable.
Mi intencion es declarar nuevas variables mediante el bucle, el problema q tengo es q hay q poner una variable dentro de otra variable y eso no se como se hace o si se puede hacer.

saludos
En línea

$hyDow

Desconectado Desconectado

Mensajes: 45


Ver Perfil
Re: Problema con variable
« Respuesta #3 en: 1 Agosto 2008, 20:26 pm »

no te entendi, pero el code esta mal
echo %var%ini%%
seria:
echo %var%%ini%
En línea

kraszic

Desconectado Desconectado

Mensajes: 277


Ver Perfil
Re: Problema con variable
« Respuesta #4 en: 1 Agosto 2008, 20:46 pm »

no te entendi, pero el code esta mal
echo %var%ini%%
seria:
echo %var%%ini%
noo, esa es mi duda exactamente..

Tengo un contador q aumenta (1, 2, 3, 4, 5...)
Ese contador lo guardo en la variable ini.

Y lo q quiero es definir las variables en el bule de esta forma:
var1
var2
var3

Por eso pongo, set var%ini%=loquesea
con ini le doy un numero a esa variable, de modo q si ini=1, el resultado seria:
set var1=loquesea

Entonces lo q yo quiero hacer es imprimir esa variable, por eso pongo:
echo %var%ini%%
Lo que quiero es imprimir la variable; var1 (ini es el numero, y todo junto es el nombre de la variable)

Espero q me entiendan..

Voy a poner otro ejemplo q se ve mas clara mi intencion.

Código:
set ini=0
set /p crip=Introduzca una palabra de 10 digitos:
:bucle
if %ini%==9 goto acab
set vacr=%crip:~%ini%,1%
call :loquesea
rem Ignorar el call
set /a ini=%ini%+1
goto bucle

En este code hay otro ejemplo de una variable dentrode otra variable en la linia:
Código:
set vacr=%crip:~%ini%,1%
En este codigo, lo q intento consegir, es sacar todas las letras de la palabra guardada en la variable crip, de modo q primero guarde la primera letra, despues guarde la segunda...

saludos
En línea

carlitos.dll

Desconectado Desconectado

Mensajes: 266



Ver Perfil
Re: Problema con variable
« Respuesta #5 en: 1 Agosto 2008, 21:06 pm »

Código:
You can use the :~ syntax and provide each of the parameters from other variables, for example if you have

%_donor%=2539850
%_digit%=4

To extract digit # 4 from _donor you might try

SET _substring=%_donor:~%_digit%,1%

Unfortunately this will not work because the :~ syntax expects a value not a variable.
To get around this use the CALL command like this:

 SET _startchar=2
 SET _length=1
 SET _donor=884777
 CALL SET _substring=%%_donor:~%_startchar%,%_length%%%
 ECHO (%_substring%)

:: Credits:
:: Clay Calvert - alt.msdos.batch.nt
:: Ritchie Lawrence - alt.msdos.batch.nt

Fuente:http://www.ss64.com/ntsyntax/varsubstring.html

call set vacr=%%crip:~%ini%,1%%

lo mismo que quieres hacer, pero le añades un call antes del set y un % al principio y otro al final.

no solo con set:

call echo %%crip:~%ini%,1%%


« Última modificación: 1 Agosto 2008, 21:10 pm por carlitos.dll » En línea

kraszic

Desconectado Desconectado

Mensajes: 277


Ver Perfil
Re: Problema con variable
« Respuesta #6 en: 2 Agosto 2008, 00:42 am »

mil gracias, me has salvado xD
Eso es justo lo q necesitaba

saludos
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema con alcance de variable en class de C++
Programación C/C++
arturoro 3 2,984 Último mensaje 22 Mayo 2012, 23:23 pm
por Eternal Idol
Problema variable j
Programación C/C++
Ander123 6 2,795 Último mensaje 28 Octubre 2012, 12:57 pm
por DickGumshoe
Problema inicializando una variable
Java
reygecko 2 2,319 Último mensaje 30 Diciembre 2012, 00:59 am
por reygecko
Problema con variable de sesion y variable de conexion
PHP
Vaagish 9 6,290 Último mensaje 19 Marzo 2013, 22:37 pm
por Vaagish
PROBLEMA CON UNA VARIABLE
Programación C/C++
magv1991 2 1,905 Último mensaje 21 Febrero 2014, 14:19 pm
por NikNitro!
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines