string.h
上传用户:luoyougen
上传日期:2008-05-12
资源大小:23136k
文件大小:4k
源码类别:

VxWorks

开发平台:

C/C++

  1. /* string.h - string library header file */
  2. /* Copyright 1992-1999 Wind River Systems, Inc. */
  3. /*
  4. modification history
  5. --------------------
  6. 02h,00oct00,sn   Removed size_t typedef
  7. 02g,17feb99,mrs  Add C++ support for NULL, (SPR #25079).
  8. 02f,22sep92,rrr  added support for c++
  9. 02e,14sep92,smb  added const to the prototype of bcopy.
  10. 02d,07sep92,smb  removed macros for memcpy and memset.
  11. 02c,30jul92,smb  added macros for memcpy and memset.
  12. 02b,09jul92,smb  removed extra memmove declarations.
  13. 02a,04jul92,jcf  cleaned up.
  14. 01b,03jul92,smb  macro override for strerror added.
  15. 01a,29jul91,rrr  written.
  16. */
  17. #ifndef __INCstringh
  18. #define __INCstringh
  19. #ifdef __cplusplus
  20. extern "C" {
  21. #endif
  22. #include "types/vxANSI.h"
  23. #ifndef NULL
  24. #if defined __GNUG__
  25. #define NULL (__null)
  26. #else
  27. #if !defined(__cplusplus) && 0
  28. #define NULL ((void*)0)
  29. #else
  30. #define NULL (0)
  31. #endif
  32. #endif
  33. #endif
  34. #if defined(__STDC__) || defined(__cplusplus)
  35. extern void * memchr (const void *__s, int __c, size_t __n);
  36. extern int  memcmp (const void *__s1, const void *__s2, size_t __n);
  37. extern void * memcpy (void *__s1, const void *__s2, size_t __n);
  38. extern void * memmove (void *__s1, const void *__s2, size_t __n);
  39. extern void * memset (void *__s, int __c, size_t __n);
  40. extern char * strcat (char *__s1, const char *__s2);
  41. extern char * strchr (const char *__s, int __c);
  42. extern int  strcmp (const char *__s1, const char *__s2);
  43. extern int  strcoll (const char *__s1, const char *__s2);
  44. extern char * strcpy (char *__s1, const char *__s2);
  45. extern size_t  strcspn (const char *__s1, const char *__s2);
  46. extern size_t  strlen (const char *__s);
  47. extern char * strncat (char *__s1, const char *__s2, size_t __n);
  48. extern int  strncmp (const char *__s1, const char *__s2, size_t __n);
  49. extern char * strncpy (char *__s1, const char *__s2, size_t __n);
  50. extern char * strpbrk (const char *__s1, const char *__s2);
  51. extern char * strrchr (const char *__s, int __c);
  52. extern size_t  strspn (const char *__s1, const char *__s2);
  53. extern char * strstr (const char *__s1, const char *__s2);
  54. extern char * strtok (char *__s, const char *__sep);
  55. extern size_t  strxfrm (char *__s1, const char *__s2, size_t __n);
  56. extern char * strerror(int __errcode);
  57. #if _EXTENSION_POSIX_REENTRANT /* undef for ANSI */
  58. extern char * strtok_r (char *__s, const char *__sep, char **__ppLast);
  59. #endif
  60. #if _EXTENSION_WRS   /* undef for ANSI */
  61. extern int strerror_r (int __errcode, char *__buf);
  62. extern void  bcopy (const char *source, char *dest, int nbytes);
  63. extern void  bcopyBytes (char *source, char *dest, int nbytes);
  64. extern void  bcopyWords (char *source, char *dest, int nwords);
  65. extern void  bcopyLongs (char *source, char *dest, int nlongs);
  66. extern void  bfill (char *buf, int nbytes, int ch);
  67. extern void  bfillBytes (char *buf, int nbytes, int ch);
  68. extern void  bzero (char *buffer, int nbytes);
  69. extern int  bcmp (char *buf1, char *buf2, int nbytes);
  70. extern void  binvert (char *buf, int nbytes);
  71. extern void  bswap (char *buf1, char *buf2, int nbytes);
  72. extern void  uswab (char *source, char *destination, int nbytes);
  73. extern void  swab (char *source, char *dest, int nbytes);
  74. extern char * index (const char *s, int c);
  75. extern char * rindex (const char *s, int c);
  76. #endif
  77. #else /* __STDC__ */
  78. extern void * memchr ();
  79. extern int  memcmp ();
  80. extern void * memcpy ();
  81. extern void * memmove ();
  82. extern void * memset ();
  83. extern char * strcat ();
  84. extern char * strchr ();
  85. extern int  strcmp ();
  86. extern int  strcoll ();
  87. extern char * strcpy ();
  88. extern size_t  strcspn ();
  89. extern size_t  strlen ();
  90. extern char * strncat ();
  91. extern int  strncmp ();
  92. extern char * strncpy ();
  93. extern char * strpbrk ();
  94. extern char * strrchr ();
  95. extern size_t  strspn ();
  96. extern char * strstr ();
  97. extern char * strtok ();
  98. extern size_t  strxfrm ();
  99. extern char * strerror ();
  100. #if _EXTENSION_POSIX_REENTRANT /* undef for ANSI */
  101. extern char * strtok_r ();
  102. #endif
  103. #if _EXTENSION_WRS   /* undef for ANSI */
  104. extern int strerror_r ();
  105. extern void  bcopy ();
  106. extern void  bcopyBytes ();
  107. extern void  bcopyWords ();
  108. extern void  bcopyLongs ();
  109. extern void  bfill ();
  110. extern void  bfillBytes ();
  111. extern void  bzero ();
  112. extern int  bcmp ();
  113. extern void  binvert ();
  114. extern void  bswap ();
  115. extern void  uswab ();
  116. extern void  swab ();
  117. extern char * index ();
  118. extern char * rindex ();
  119. #endif
  120. #endif /* __STDC__ */
  121. #ifdef __cplusplus
  122. }
  123. #endif
  124. #endif /* __INCstringh */