source: SVN/cambria/redboot/packages/language/c/libc/string/current/include/string.h @ 1

Last change on this file since 1 was 1, checked in by Tim Harvey, 2 years ago

restored latest version of files from server backup

Signed-off-by: Tim Harvey <tharvey@…>

File size: 4.6 KB
Line 
1#ifndef CYGONCE_LIBC_STRING_H
2#define CYGONCE_LIBC_STRING_H
3/*===========================================================================
4//
5//      string.h
6//
7//      ANSI standard string and memory area manipulation routines
8//
9//===========================================================================
10//####ECOSGPLCOPYRIGHTBEGIN####
11// -------------------------------------------
12// This file is part of eCos, the Embedded Configurable Operating System.
13// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
14//
15// eCos is free software; you can redistribute it and/or modify it under
16// the terms of the GNU General Public License as published by the Free
17// Software Foundation; either version 2 or (at your option) any later version.
18//
19// eCos is distributed in the hope that it will be useful, but WITHOUT ANY
20// WARRANTY; without even the implied warranty of MERCHANTABILITY or
21// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
22// for more details.
23//
24// You should have received a copy of the GNU General Public License along
25// with eCos; if not, write to the Free Software Foundation, Inc.,
26// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
27//
28// As a special exception, if other files instantiate templates or use macros
29// or inline functions from this file, or you compile this file and link it
30// with other works to produce a work based on this file, this file does not
31// by itself cause the resulting work to be covered by the GNU General Public
32// License. However the source code for this file must still be made available
33// in accordance with section (3) of the GNU General Public License.
34//
35// This exception does not invalidate any other reasons why a work based on
36// this file might be covered by the GNU General Public License.
37//
38// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
39// at http://sources.redhat.com/ecos/ecos-license/
40// -------------------------------------------
41//####ECOSGPLCOPYRIGHTEND####
42//===========================================================================
43//#####DESCRIPTIONBEGIN####
44//
45// Author(s):     jlarmour
46// Contributors: 
47// Date:          2000-04-14
48// Purpose:       This file provides various string functions required by
49//                ISO C 9899:1990
50// Description:   The real contents of this file get filled in from the
51//                configuration set by the implementation
52// Usage:         Do not include this file directly - use #include <string.h>
53//
54//####DESCRIPTIONEND####
55//
56//=========================================================================*/
57
58/* CONFIGURATION */
59
60#include <pkgconf/libc_string.h>   /* Configuration header */
61
62#ifdef __cplusplus
63extern "C" {
64#endif
65
66/* FUNCTION PROTOTYPES */
67
68/*=========================================================================*/
69
70/* 7.11.2 Copying functions */
71
72extern void *
73memmove( void *, const void *, size_t );
74
75extern char *
76strcpy( char *, const char * );
77
78extern char *
79strncpy( char *, const char *, size_t );
80
81/*=========================================================================*/
82
83/* 7.11.3 Concatenation functions */
84
85extern char *
86strcat( char *, const char * );
87
88extern char *
89strncat( char *, const char *, size_t );
90
91
92/*=========================================================================*/
93
94/* 7.11.4 Comparison functions */
95
96extern int
97memcmp( const void *, const void *, size_t );
98
99extern int
100strcmp( const char *, const char * );
101
102extern int
103strcoll( const char *, const char * );
104
105extern int
106strncmp( const char *, const char *, size_t );
107
108extern size_t
109strxfrm( char *, const char *, size_t );
110
111
112/*=========================================================================*/
113
114/* 7.11.5 Search functions */
115
116extern void *
117memchr( const void *, int,  size_t );
118
119extern char *
120strchr( const char *, int );
121
122extern size_t
123strcspn( const char *, const char * );
124
125extern char *
126strpbrk( const char *, const char * );
127
128extern char *
129strrchr( const char *, int );
130
131extern size_t
132strspn( const char *, const char * );
133
134extern char *
135strstr( const char *, const char * );
136
137extern char *
138strtok( char *, const char * );
139
140/* POSIX 1003.1 section 8.3.3 strtok_r() */
141
142extern char *
143strtok_r( char *, const char *, char ** );
144
145
146/*=========================================================================*/
147
148/* 7.11.6 Miscellaneous functions */
149
150extern size_t
151strlen( const char * );
152
153// NB This is a BSD function
154#ifndef __STRICT_ANSI__
155extern char *
156strdup( const char * );
157#endif
158
159#ifdef __cplusplus
160}   /* extern "C" */
161#endif
162
163/* INLINE FUNCTIONS */
164
165#ifdef CYGIMP_LIBC_STRING_INLINES
166#include <cyg/libc/string/string.inl>
167#endif
168
169#endif /* CYGONCE_LIBC_STRING_H multiple inclusion protection */
170
171/* EOF string.h */
Note: See TracBrowser for help on using the repository browser.