CTITLEUSLEN -- RETURN NUMBER OF NON-BLANK CHARS IN A CHAR STRING C*********************************************************************** C COPYRIGHT ATLANTIC RICHFIELD COMPANY 1991 * C*********************************************************************** CA AUTHOR J. M. PONTON CA DESIGNER J. M. PONTON CA LANGUAGE VSFORTRAN CA SYSTEM IBM S/370 CA WRITTEN 11-27-84 C REVISED MO-DA-YR BY PROGRAMMER FOR REASON CA CA NC = USLEN(STRING) CA CA IN/OUT ARGUMENT TYPE DESCRIPTION CA ------ -------- ---- ----------- CA IN STRING CHAR CHARACTER STRING TO BE EXAMINED. MUST BE CA DECLARED 'CHARACTER IN CALLING PROGRAM. CA CA OUT USLEN I4 NUMBER OF CHARACTERS TO THE LAST NON- CA BLANK CHARACTER IN 'STRING'. CA CA CA THIS FUNCTION FIRST DETERMINES THE MAXIMUM LENGTH OF 'STRING' CA BY CALLING THE VS FORTRAN LEN FUNCTION. THEN IT SEARCHES BACK- CA WARDS UNTIL IT FINDS THE LAST NON-BLANK CHARACTER IN 'STRING'. CA THIS IS THE NUMBER RETURNED BY USLEN. IF ALL CHARACTERS ARE CA BLANK, USLEN RETURNS 0. CA CA C EJECT C INTEGER FUNCTION USLEN(STRING) C IMPLICIT INTEGER (A-Z) CHARACTER*(*) STRING C MXCHAR = LEN(STRING) USLEN = 0 IF (MXCHAR .LE. 0) RETURN C C SEARCH FOR LAST NON-BLANK CHARACTER. C DO 10 J = 1, MXCHAR CHAR = MXCHAR - J + 1 IF (STRING(CHAR:CHAR) .NE. ' ') GO TO 20 10 CONTINUE C C STRING IS ALL BLANK. C RETURN C 20 CONTINUE USLEN = CHAR C RETURN END