__string.h
上传用户:tsgydb
上传日期:2007-04-14
资源大小:10674k
文件大小:4k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. /* Copyright 1994-1995 The Santa Cruz Operation, Inc. All Rights Reserved. */
  2. #if defined(_NO_PROTOTYPE) /* Old, crufty environment */
  3. #include <oldstyle/string.h>
  4. #elif defined(_XOPEN_SOURCE) || defined(_XPG4_VERS) /* Xpg4 environment */
  5. #include <xpg4/string.h>
  6. #elif defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) /* Posix environment */
  7. #include <posix/string.h>
  8. #elif _STRICT_ANSI  /* Pure Ansi/ISO environment */
  9. #include <ansi/string.h>
  10. #elif defined(_SCO_ODS_30) /* Old, Tbird compatible environment */
  11. #include <ods_30_compat/string.h>
  12. #else  /* Normal, default environment */
  13. /*
  14.  *   Portions Copyright (C) 1983-1995 The Santa Cruz Operation, Inc.
  15.  * All Rights Reserved.
  16.  *
  17.  * The information in this file is provided for the exclusive use of
  18.  * the licensees of The Santa Cruz Operation, Inc.  Such users have the
  19.  * right to use, modify, and incorporate this code into other products
  20.  * for purposes authorized by the license agreement provided they include
  21.  * this notice and the associated copyright notice with any such product.
  22.  * The information in this file is provided "AS IS" without warranty.
  23.  */
  24. /* Portions Copyright (c) 1990, 1991, 1992, 1993 UNIX System Laboratories, Inc. */
  25. /* Portions Copyright (c) 1979 - 1990 AT&T   */
  26. /*   All Rights Reserved   */
  27. /* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF          */
  28. /* UNIX System Laboratories, Inc.                          */
  29. /* The copyright notice above does not evidence any        */
  30. /* actual or intended publication of such source code.     */
  31. #ifndef ___STRING_H
  32. #define ___STRING_H
  33. #pragma comment(exestr, "xpg4plus @(#) string.h 20.1 94/12/04 ")
  34. #ifdef __cplusplus
  35. extern "C" {
  36. #endif
  37. #ifndef _SIZE_T
  38. #define _SIZE_T
  39. typedef unsigned int size_t;
  40. #endif
  41. #ifndef NULL
  42. #define NULL 0
  43. #endif /* NULL */
  44. extern void *memchr(const void *, int, size_t);
  45. extern void *memcpy(void *, const void *, size_t);
  46. extern void *memccpy(void *, const void *, int, size_t);
  47. extern void *memmove(void *, const void *, size_t);
  48. extern void *memset(void *, int, size_t);
  49. extern char *strchr(const char *, int);
  50. extern char *strcpy(char *, const char *);
  51. extern char *strncpy(char *, const char *, size_t);
  52. extern char *strcat(char *, const char *);
  53. extern char *strncat(char *, const char *, size_t);
  54. extern char *strpbrk(const char *, const char *);
  55. extern char *strrchr(const char *, int);
  56. extern char *strstr(const char *, const char *);
  57. extern char *strtok(char *, const char *);
  58. extern char *strtok_r(char *, const char *, char **);
  59. extern char *strerror(int);
  60. extern char *strlist(char *, const char *, ...);
  61. extern int memcmp(const void *, const void *, size_t);
  62. extern int strcmp(const char *, const char *);
  63. extern int strcoll(const char *, const char *);
  64. extern int strncmp(const char *, const char *, size_t);
  65. extern void perror(const char *);
  66. extern char *strdup(const char *);
  67. extern int     strncoll(const char *, const char *, int);
  68. extern size_t  strnxfrm(char *, const char *, size_t , int);
  69. extern size_t strxfrm(char *, const char *, size_t);
  70. extern size_t strcspn(const char *, const char *);
  71. extern size_t strspn(const char *, const char *);
  72. extern size_t strlen(const char *);
  73. #ifdef __USLC__
  74. #pragma int_to_unsigned strcspn
  75. #pragma int_to_unsigned strspn
  76. #pragma int_to_unsigned strlen
  77. #endif
  78. #if !defined(__cplusplus) && defined(__USLC__)
  79. /* Use intrinsic ??? */
  80. #ifndef strlen
  81. #define strlen __std_hdr_strlen
  82. #endif
  83. #ifndef strcpy
  84. #define strcpy __std_hdr_strcpy
  85. #endif
  86. #ifndef strncpy
  87. #define strncpy __std_hdr_strncpy
  88. #endif
  89. #endif
  90. extern int ffs(int);
  91. /*
  92.  * The following two functions were withdrawn in XPG3,
  93.  * but are provided for backwards compatibility.
  94.  */
  95. extern int nl_strcmp(char *, char *);
  96. extern int nl_strncmp(char *, char *, int n);
  97. #ifdef __cplusplus
  98. }
  99. #endif
  100. #endif /* ___STRING_H */
  101. #endif