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 ncpos_c

Table of contents

Procedure Abstract Required_Reading Keywords Brief_I/O Detailed_Input | Detailed_Output Parameters Exceptions Files Particulars Examples | Restrictions Literature_References Author_and_Institution Version Index_Entries

#### Procedure

       ncpos_c ( NOT Character position )

       SpiceInt ncpos_c ( ConstSpiceChar    * str,
                          ConstSpiceChar    * chars,
                          SpiceInt            start  )

#### Abstract

       Find the first occurrence in a string of a character NOT belonging
       to a collection of characters, starting at a specified location,
       searching forward.

#### Required_Reading

       SCANNING

#### Keywords

       CHARACTER
       SEARCH
       UTILITY

#### Brief_I/O

       VARIABLE  I/O  DESCRIPTION
       --------  ---  --------------------------------------------------
       str        I   Any character string.
       chars      I   A collection of characters.
       start      I   Position to begin looking for one not in chars.

       The function returns the index of the first character of str
       at or following index start that is not in the collection chars.

#### Detailed_Input

       str         is any character string.

       chars       is a character string containing a collection of
                   characters. Spaces in chars are significant, including
                   trailing blanks. The order in which characters are
                   listed is not significant.

       start       is the position in str to begin looking for characters
                   not in chars. start may range from 0 to n-1, where n is
                   the number of characters in str.

#### Detailed_Output

       The function returns the index of the first character of str (at or
       following index start) that is not one of the characters in the
       string chars. The returned value normally ranges from 0 to n-1,
       where n is the number of characters in str. If no such character is
       found, the function returns -1.

#### Parameters

       None.

#### Exceptions

       1)  If `start' is less than 0, the search begins at the first
           character of the string.

       2)  If `start' is greater than the length of the string, ncpos_c
           returns -1.

       3)  If any of the `str' or `chars' input string pointers is null,
           the error SPICE(NULLPOINTER) is signaled. The function returns
           the value -1.

       4)  If any of the `str' or `chars' input string has zero length,
           the function returns the value -1. This case is not considered
           an error.

#### Files

       None.

#### Particulars

       ncpos_c is case sensitive.

       An entire family of related CSPICE routines

          cpos_c
          cposr_c
          ncpos_c
          ncposr_c
          pos_c
          posr_c

       is described in the Required Reading.

#### Examples

       Let string == "BOB, JOHN, TED, AND MARTIN    "
                      012345678901234567890123456789

       Let chars  == "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

       Normal (Sequential) Searching:
       ------------------------------

          ncpos_c( string, chars,  0 ) ==  3
          ncpos_c( string, chars,  4 ) ==  4
          ncpos_c( string, chars,  5 ) ==  9
          ncpos_c( string, chars, 10 ) == 10
          ncpos_c( string, chars, 11 ) == 14
          ncpos_c( string, chars, 15 ) == 15
          ncpos_c( string, chars, 16 ) == 19
          ncpos_c( string, chars, 20 ) == 26
          ncpos_c( string, chars, 27 ) == 27
          ncpos_c( string, chars, 28 ) == 28
          ncpos_c( string, chars, 29 ) == 29

       start out of bounds:
       --------------------

          ncpos_c( string, chars, -12 ) ==  3
          ncpos_c( string, chars,  -1 ) ==  3
          ncpos_c( string, chars,  30 ) == -1
          ncpos_c( string, chars, 122 ) == -1

#### Restrictions

       None.

#### Literature_References

       None.

#### Author_and_Institution

       N.J. Bachman        (JPL)
       J. Diaz del Rio     (ODC Space)
       W.L. Taber          (JPL)

#### Version

       -CSPICE Version 1.0.1, 04-AUG-2021 (JDR)

           Edited the header to comply with NAIF standard.

       -CSPICE Version 1.0.0, 14-AUG-2002 (NJB) (WLT)

#### Index_Entries

       forward search for position of unlisted character

#### Link to routine ncpos_c source file ncpos_c.c

    Fri Dec 31 18:41:09 2021