Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   problema con arreglo de estructuras (https://www.clubdelphi.com/foros/showthread.php?t=55835)

zidfrid 28-04-2008 20:26:17

problema con arreglo de estructuras
 
Hola amigos del club :)

veran tengo un problema con un arreglo de structuras que declare, el cual es el sgte:
[/quote]
struct TABLA
{
String nombre;
int numeros[24];
}tablas[1000];
[/delphi]

El problema viene cuando quiero inicializar el campo de numeros en mi variable tablas, veran yo lo haria asi:
[code]
-
- - - -
tablas[0].numeros[24]={1,2,3,4,5,6,7,8,9,10,............};
[/delphi]
pero esto me produce un error; pensaba que el campo numeros lo podia asignar igual que un arreglo normal de ints; pero ya veran la chambonada que hago y el desgraciado compila sin errores:
[code]
-
- - - -
tablas[0].numeros[24]=(1,2,3,4,5,6,7,8,9,10,............);
[/delphi]
Con solo cambiar las llaves por parentesis me compila, pero aqui la faya es que no me asigna correctamente los valores de las posiciones del arreglo numeros, o por lo menos cuando los leo, todos estan en cero (0).

agradeceria cualquier ayuda que me pudieran brindar para asignar directamente los valores al campo numeros de mi estructura.

de antemamo muchas gracias por el tiempo empleado en leer este hilo y por cualquier ayuda brindada para inicializar correctamente mi variable.:)

escafandra 28-04-2008 23:42:19

Código:

for(int n=1;n<24; n++)    tablas[0].numeros[n-1]=n;
Saludos.

zidfrid 29-04-2008 03:01:44

agradesco tu aporte escafandra, pero lo que ocurre es que los valores que coloque eran solo de ejemplo.

los valores reales con los que necesito inicializar el campo son aleatorios, no secuenciales, en realidad fue falla mia el no haber especificado eso, de todas maneras muchas gracias y sigo esperando una ayuda mas adecuada para mi problema.

escafandra 29-04-2008 08:13:21

El problema es que solo puedes inicializar, de la forma que tu pretendes, en la misma declaración. Después debes hacerlo por código.

Si pretendes hacerlo en la misma declaración, prueba esto:

Código:

// Definición de la estructura
struct TABLA
{
  char nombre[20];
  int numeros[24];
};

Código:

// Declaración e inicialización parcial
TABLA  Tablas[1000] = {{{"hola"}, { 1,2,3,4}}} ;

Saludos.


La franja horaria es GMT +2. Ahora son las 20:34:59.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi