• Domingo 28 de Abril de 2024, 23:54

Autor Tema:  Declaracion De Un Numero De Variables Desconocido  (Leído 1097 veces)

satturno

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Declaracion De Un Numero De Variables Desconocido
« en: Martes 24 de Enero de 2006, 21:00 »
0
saludos,

como puedo usar un numero N de variables en mi programa, si N es un numero definido por el usuario.

por ejemplo, digamos que N = 5, entonces tendria var1, var2, var3, var4 y var5

entonces tendria que declararlas asi:

int var1, var2, var3, var4, var5;

pero digamos que N cambia segun lo defina el usuario; entonces como puedo declarar estas variables que no se cuantas son, es posible usar un for?

algo asi como:

for (int i = 0; i = N; i++)
{
     // Y DECLARAR LAS VARIABLES ACA
}

si alguien me puediera dar una pista ...

rir3760

  • Miembro activo
  • **
  • Mensajes: 37
    • Ver Perfil
Re: Declaracion De Un Numero De Variables Desconocido
« Respuesta #1 en: Miércoles 25 de Enero de 2006, 15:04 »
0
Para eso tienes que reservar memoria de forma dinamica ya sea con malloc (en C) o con el operador new (en C++). Un ejemplo sencillo en C estandar es:
Código: Text
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main(void)
  5. {
  6.    int *variable;
  7.    int num_vars = 10;
  8.    int i;
  9.    
  10.    /* Reservamos memoria para 'num_vars' elementos */
  11.    variable = malloc(num_vars * sizeof *variable);
  12.    
  13.    /* Verificamos que no hayan ocurrido errores */
  14.    if (variable == NULL)
  15.       return EXIT_FAILURE;
  16.    
  17.    /* Asignamos un valor seudo-aleatorio a cada uno */
  18.    for (i = 0; i < num_vars; i++)
  19.       variable[i] = rand() % 10;
  20.    
  21.    /* Imprimos el contenido de los elementos */
  22.    for (i = 0; i < num_vars; i++)
  23.       printf("variable[%d] == %d\n", i, variable[i]);
  24.    
  25.    /* Liberamos la memoria reservada y terminamos */
  26.    free(variable);
  27.    return EXIT_SUCCESS;
  28. }
  29.  

Un saludo
The capacity to learn is a gift; The ability to learn is a skill; The willingness to learn is a choice. -- Rebec of Ginaz

satturno

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Declaracion De Un Numero De Variables Desconocido
« Respuesta #2 en: Viernes 27 de Enero de 2006, 20:12 »
0
Gracias rir3760  :D , disculpa la tardanza en responder, me quede sin internet unos dias.

Ok, deja lo pruebo y a ver que sale.

Saludos