Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ (2) — Plan9 1st Edition

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

strcat(2)

GETFIELDS(2)

NAME

getfields, getmfields, setfields − break a string into fields

SYNOPSIS

intgetfields(char ∗str, char ∗∗ptrs, int nptrs)

intgetmfields(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 number 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)

Plan 9  —  January 03, 1993

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026