Skip to main content

Inicialización de variables

El valor de inicialización estándar para todas las declaraciones es 0. En la parte de declaración también puede especificar los valores de inicialización definidos por el usuario para cada variable y cada tipo de datos

La inicialización definida por el usuario comienza con el operador de asignación := y consiste en cualquier expresión válida del lenguaje de programación ST (texto estructurado). De este modo, se define el valor de inicialización con la ayuda de constantes, otras variables o funciones. Si usa una variable, también debe inicializarla

tabla 5. Valores de inicialización predeterminados

Tipo de datos

Inicialización

Cualquier tipo de datos numéricos

0

Cada puntero

0

BOOL

FALSE

ARRAY OF

El valor de inicialización predeterminado de cada elemento

Estructura

Si no se ha definido un valor explícito para los elementos individuales de la declaración, el valor predeterminado del tipo de datos es el valor de inicialización.



ejemplo 13. Ejemplos
VAR
    var1:INT := 12;    //initialization value 12
    x : INT := 13 + 8;    //initalization value defined by an expression of constants
    y : INT := x + fun(4);    //initialization value defined by an expression,
                              //that contains a function call; notice the order!
    z : POINTER TO INT := ADR(y);   //not described in the standard IEC61131-3:
                                    // initialization value defined by an adress function;
                                    // Notice: In this case the pointer will not be initialized
                                    // during an Online Change *)
END_VAR


Notas sobre el orden de inicialización

En primer lugar, las constantes

A partir de la versión 3.5.3.40 del compilador, las variables de un bloque de funciones se inicializan en el siguiente orden: en primer lugar, todas las constantes según el orden de sus declaraciones y, a continuación, todas las demás variables según el orden de sus declaraciones.

Variables globales antes que variables locales

En la versión 3.3.2.0 del compilador y posteriores, las variables de las listas de variables globales siempre se inicializan antes que las variables locales de una POU.

Para obtener más información, consulte: Declaración e inicialización de variables de estructura y pragma global_init_slot.