Recherche…


STRINGVAL ... Move -versus- STRING

   IDENTIFICATION DIVISION.
   PROGRAM-ID.  STRINGVAL.
   ENVIRONMENT DIVISION.
   DATA DIVISION.
   WORKING-STORAGE SECTION.

   01  WORK-AREAS.
       05 I-STRING        PIC X(08) VALUE   'STRNGVAL'.

       05 O-STRING        PIC XBXBXBXBXBXBXBX.
          88  O-STRING-IS-EMPTY     VALUE   SPACES.

   PROCEDURE DIVISION.
   GENESIS.

       PERFORM MAINLINE

       PERFORM FINALIZATION

       GOBACK

        .


   MAINLINE.

       DISPLAY 'STRINGVAL EXAMPLE IS STARTING !!!!!!!!!!!!!!'

       DISPLAY '=== USING MOVE STATEMENT ==='
       MOVE I-STRING TO O-STRING
       DISPLAY 'O STRING= ' O-STRING

       DISPLAY '=== USING STRING STATEMENT ==='
       SET O-STRING-IS-EMPTY    TO  TRUE
       STRING I-STRING ( 1 : 1 ) DELIMITED BY SIZE
           ' ' DELIMITED BY SIZE
           I-STRING ( 2 : 1 ) DELIMITED BY SIZE
           ' ' DELIMITED BY SIZE
           I-STRING ( 3 : 1 ) DELIMITED BY SIZE
           ' ' DELIMITED BY SIZE
           I-STRING ( 4 : 1 ) DELIMITED BY SIZE
           ' ' DELIMITED BY SIZE
           I-STRING ( 5 : 1 ) DELIMITED BY SIZE
           ' ' DELIMITED BY SIZE
           I-STRING ( 6 : 1 ) DELIMITED BY SIZE
           ' ' DELIMITED BY SIZE
           I-STRING ( 7 : 1 ) DELIMITED BY SIZE
           ' ' DELIMITED BY SIZE
           I-STRING ( 8 : 1 ) DELIMITED BY SIZE
           ' ' DELIMITED BY SIZE
           INTO O-STRING

       DISPLAY 'O STRING= ' O-STRING

        .


   FINALIZATION.

       DISPLAY 'STRINGVAL EXAMPLE IS COMPLETE !!!!!!!!!!!!!!'

        .

   END PROGRAM STRINGVAL.

Pas un exemple, mais ....

semblait la seule façon d'ajouter un commentaire. Une chose facile à oublier est que si vous enchaînez certaines variables comme l'exemple ci-dessus et que la longueur résultante est plus courte que celle qui était à l'origine dans la variable de réception (o-string ci-dessus), les caractères "suivis" restent en place.

Par exemple, si o-string contient "la chaîne contient ces données" et que vous enchaînez "fred & Bert", alors o-string contiendra "fred & Bertontains ces données" (si j'ai bien compté).

Summa summary, prenez l'habitude de déplacer TOUJOURS les espaces dans votre variable de réception avant de commencer à jouer.



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow