MAX_LEN

Renvoyer la longueur de la chaîne de caractères maximale

Cette instruction renvoie la longueur de la chaîne de caractères maximale définie dans la déclaration de variable de la variable d’entrée et écrit la valeur dans la variable de sortie.

Paramètres

Entrée

Unnamed input(STRING)

Variable chaîne de caractères déclarée dans l’en-tête du POU

Sortie

Unnamed output(INT)

Nombre maximum de caractères de la déclaration

Remarques

  • Si cette instruction est utilisée avec des chaînes de caractères en UTF-8, consultez les remarques concernant les chaînes de caractères en UTF-8 sous “STRING”.

Drapeaux d’erreur

sys_bIsOperationErrorHold (passe à TRUE et reste TRUE)

Si une chaîne de caractères en entrée ou sortie est invalide.

sys_bIsOperationErrorNonHold (passe à TRUE pendant un cycle)

Si une chaîne de caractères en entrée ou sortie est invalide.

Exemple

En-tête du POU

Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction ont été déclarées dans l’en-tête du POU. Le même en-tête de POU est utilisé pour tous les langages de programmation.

	VAR
		sTestString: STRING[128]:='A better life. A better world';
		iStringLength: INT:=0;
		iMaxStringLength: INT:=0;
	END_VAR

Corps en LD

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,MAX_LEN!,,20,1,26,3,,?D?C);
B(B_VARIN,,sTestString,18,1,20,3,);
B(B_VAROUT,,iMaxStringLength,26,1,28,3,);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corps en ST

iMaxStringLength := MAX_LEN(sTestString);

Modifié le : 2022-05-06Commentaires sur cette pageAssistance téléphonique