Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ index(3) — Motorola System V 88k Release 4 Version 4.2

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

bstring(3)

string(3C)

malloc(3C)

index(3)  —  LIBRARY FUNCTIONS

NAME

index, rindex − string operations

SYNOPSIS

/usr/ucb/cc [ flag. . . ] file . . . 

#include <strings.h>

char ∗index(s, c)
char ∗s, c;

char ∗rindex(s, c)
char ∗s, c;

DESCRIPTION

These functions operate on NULL-terminated strings.  They do not check for overflow of any receiving string. 

index and rindex returns a pointer to the first (last) occurrence of character c in string s, or a NULL pointer if c does not occur in the string.  The NULL character terminating a string is considered to be part of the string. 

SEE ALSO

bstring(3), string(3C), malloc(3C). 

NOTES

For user convenience, these functions are declared in the optional <strings.h> header file which is located in /usr/ucbinclude. 

You can not use a NULL pointer to indicate a NULL string.  A NULL pointer is an error and results in an abort of the program.  If you wish to indicate a NULL string, you must have a pointer that points to an explicit NULL string.  On some implementations of the C language on some machines, a NULL pointer, if dereferenced, would yield a NULL string; this highly non-portable trick was used in some programs.  Programmers using a NULL pointer to represent an empty string should be aware of this portability issue; even on machines where dereferencing a NULL pointer does not cause an abort of the program, it does not necessarily yield a NULL string. 

Character movement is performed differently in different implementations.  Thus overlapping moves may yield surprises. 

  —  BSD Compatibility Package

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