GETFIELDS(2)                                         GETFIELDS(2)

     NAME
          getfields, getmfields, setfields - break a string into
          fields

     SYNOPSIS
          int   getfields(char *str, char **ptrs, int nptrs)

          int   getmfields(char *str, char **ptrs, int nptrs)

          char* setfields(char *fielddelim)

     DESCRIPTION
          Getfields breaks the null-terminated string str into at most
          nptrs null-terminated fields and places pointers to the
          start of these fields in the array ptrs. It returns the num-
          ber of fields and terminates the list of pointers with a
          zero pointer.  It overwrites some of the bytes in str. If
          there are nptr or more fields, the list will not end with
          zero and the last `field' will extend to the end of the
          input string and may contain delimiters.

          A field is defined as a maximal sequence of characters not
          in a set of field delimiters.  Adjacent fields are separated
          by exactly one delimiter.  No field follows a delimiter at
          the end of string.  Thus a string of just two delimiter
          characters contains two empty fields, and a nonempty string
          with no delimiters contains one field.

          Getmfields is the same as getfields except that fields are
          separated by maximal strings of field delimiters rather than
          just one.

          Setfields makes the field delimiters (space and tab by
          default) be the characters of the string fielddelim and
          returns a pointer to a string of the previous delimiters.

     SEE ALSO
          strtok in strcat(2)

     Page 1                       Plan 9            (printed 12/21/24)