Previous: utssto Up: ../plot79_u.html Next: uttda
LOGICAL FUNCTION UTTCK (KEYSTR,LENSTR,MAXKEY,PKEY,LKEY,NKEY) C$ (Check Keys) C$ Given a list of keywords (ordered alphabetically according C$ to the ASCII collating sequence) packed in KEYSTR(*) in the C$ form C$ C$ *KEY1*KEY2*KEY3*...*KEYN C$ C$ where the first character is the key separator character, C$ return the locations, lengths, and number of keys. The C$ separator character may be any character which is not a C$ keyword character. The input arguments are: C$ C$ KEYSTR(*)...........Packed keyword string. C$ LENSTR..............Number of characters in KEYSTR(*). C$ MAXKEY..............Dimension limit of PKEY(*) and LKEY(*). C$ C$ The output arguments are: C$ C$ PKEY(*).............Array of pointers to the beginning of C$ the keys in KEYSTR(*). C$ LKEY(*).............Array of lengths of the keys in C$ KEYSTR(*). C$ NKEY................Number of keys found in KEYSTR(*), and C$ number of entries in PKEY(*) and C$ LKEY(*). If NKEY > MAXKEY on return, C$ there was insufficient space in PKEY(*) C$ and LKEY(*), but the array bounds have C$ not been exceeded. C$ C$ The function value is .TRUE. if the keys are correctly C$ ordered in KEYSTR(*), and .FALSE. if they are out of order, C$ or if NKEY exceeds MAXKEY. The alphabetical order MUST be C$ correct for a binary search by FUNCTION UTTIK to work C$ successfully. C$ C$ See the abstract of UTTIK for applications of this routine C$ and a table of the ASCII character set. C$ (06-JAN-82)