Esperando un elemento de la estructura

En la posición señalada del programa se pretende declarar un elemento (campo) de la estructura no válido.

Una estructura puede tener únicamente campos de los siguientes tipos:

- Una variable, en cuyo caso se deberá indicar en la declaración el nombre de la misma, sin inicializar.

- Una tabla, indicando el nombre de la misma y, a continuación, entre corchetes, la longitud de la misma (se recuerda que una tabla declarada como mi_tabla[9]; es una tabla de 10 posiciones, desde mi_tabla[0] hasta mi_tabla[10]). Tampoco se deben inicializar.

- Otra estructura. Es posible incluir estructuras dentro de otras estructuras, sin ningún límite de anidamiento, hasta donde sea necesario. A continuación se muestra un ejemplo de anidamiento de estructuras.

Ejemplo:
PROGRAM mi_juego;
GLOBAL
    STRUCT mi_estructura[9]
        elementos;
        STRUCT datos[9]
            x, y;
        END
    END
    a, b;
BEGIN
    FROM a=0 TO 9;
        mi_estructura[a].elementos=-1;
        FROM b=0 TO 9;
            mi_estructura[a].datos[b].x=-1;
            mi_estructura[a].datos[b].y=-1;
        END
    END
    //...
END


En este ejemplo, cada registro de mi_estructura tendrá una variable denominada elementos y otra estructura con 10 elementos cada uno con dos variables: x e y.

Más adelante, en el mismo ejemplo, se puede observar un ejemplo de acceso a dicha estrucutra con dos bucles anidados que inicializan todos los valores de la estructura a -1.

Para ver cómo se debe inicializar en propia definición los valores de una estructura acceda al tópico sintaxis.


Ver: Sintaxis - Declaración de Estructura