Index of Functions: A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X 
Index Page
pcwid

Table of contents
Procedure
Abstract
Required_Reading
Keywords
Declarations
Brief_I/O
Detailed_Input
Detailed_Output
Parameters
Exceptions
Files
Particulars
Examples
Restrictions
Literature_References
Author_and_Institution
Version

Procedure

     PCWID ( Printable width of a character array )

     INTEGER FUNCTION PCWID ( ARRAY, NELT )

Abstract

     Determine the printable width of a character array.

Required_Reading

     None.

Keywords

     ARRAY
     CHARACTER

Declarations

     IMPLICIT NONE

     CHARACTER*(*)         ARRAY   ( * )
     INTEGER               NELT

Brief_I/O

     VARIABLE  I/O  DESCRIPTION
     --------  ---  --------------------------------------------------
     ARRAY      I   Input array.
     NELT       I   Number of elements in the array.

     The function returns the index of the rightmost printable
     character in the entire array of strings ARRAY.

Detailed_Input

     ARRAY    is the input array.

     NELT     is the number of elements in the input array.

Detailed_Output

     The function returns the index of the rightmost printable
     character in the entire array. This is equivalent to the maximum
     value of LASTPC for the array, but somewhat more efficient to
     compute. If NELT is not greater than zero, PCWID is zero.

     ASCII characters in the range [33,126] are considered printable.
     Blanks are not considered printable. Thus, for character arrays
     padded with blanks, PCWID is equivalent to NBWID.

Parameters

     None.

Exceptions

     Error free.

Files

     None.

Particulars

     Find the last printable character in the first element of the
     array. Search the rest of the elements, starting at the end of
     each string and moving back just far enough to determine if the
     current string is wider than any of the previous ones. (This
     makes PCWID somewhat more efficient than LASTPC.)

     If any of the strings is found to end in a printable character,
     PCWID is just the length of the individual elements of the array,
     and the search is discontinued immediately.

Examples

     Let ARRAY contain the following strings,

           ARRAY(1) = 'A string of medium length'
           ARRAY(2) = 'A very long string, much longer than the rest'
           ARRAY(3) = 'Shorter'
           ARRAY(4) = 'Short'

     padded to length 47 with null characters instead of blanks.
     Then the value returned by

           WIDEST = PCWID ( ARRAY, 4 )

     is 45.

     If the word 'rest' in the second element is changed to 'others',
     the value returned is 47, and the search is terminated after the
     second element.

Restrictions

     None.

Literature_References

     None.

Author_and_Institution

     J. Diaz del Rio    (ODC Space)
     W.L. Taber         (JPL)
     I.M. Underwood     (JPL)

Version

    SPICELIB Version 1.1.0, 08-APR-2021 (JDR)

        Added IMPLICIT NONE statement.

        Edited the header to comply with NAIF standard.

    SPICELIB Version 1.0.1, 10-MAR-1992 (WLT)

        Comment section for permuted index source lines was added
        following the header.

    SPICELIB Version 1.0.0, 31-JAN-1990 (IMU)
Fri Dec 31 18:36:38 2021