string.h

来自「此工具是arm-linux-GCC交叉编译工具(cross-3.4.4)」· C头文件 代码 · 共 429 行 · 第 1/2 页

H
429
字号
/* Similar to `strstr' but this function ignores the case of both strings.  */extern char *strcasestr (__const char *__haystack, __const char *__needle)     __THROW __attribute_pure__ __nonnull ((1, 2));#endif#ifdef __USE_GNU/* Find the first occurrence of NEEDLE in HAYSTACK.   NEEDLE is NEEDLELEN bytes long;   HAYSTACK is HAYSTACKLEN bytes long.  */extern void *memmem (__const void *__haystack, size_t __haystacklen,		     __const void *__needle, size_t __needlelen)     __THROW __attribute_pure__ __nonnull ((1, 3));/* Copy N bytes of SRC to DEST, return pointer to bytes after the   last written byte.  */extern void *__mempcpy (void *__restrict __dest,			__const void *__restrict __src, size_t __n)     __THROW __nonnull ((1, 2));extern void *mempcpy (void *__restrict __dest,		      __const void *__restrict __src, size_t __n)     __THROW __nonnull ((1, 2));#endif__BEGIN_NAMESPACE_STD/* Return the length of S.  */extern size_t strlen (__const char *__s)     __THROW __attribute_pure__ __nonnull ((1));__END_NAMESPACE_STD#ifdef	__USE_GNU/* Find the length of STRING, but scan at most MAXLEN characters.   If no '\0' terminator is found in that many characters, return MAXLEN.  */extern size_t strnlen (__const char *__string, size_t __maxlen)     __THROW __attribute_pure__ __nonnull ((1));#endif__BEGIN_NAMESPACE_STD/* Return a string describing the meaning of the `errno' code in ERRNUM.  */extern char *strerror (int __errnum) __THROW;__END_NAMESPACE_STD#if defined __USE_XOPEN2K || defined __USE_MISC/* Reentrant version of `strerror'.   There are 2 flavors of `strerror_r', GNU which returns the string   and may or may not use the supplied temporary buffer and POSIX one   which fills the string into the buffer.   To use the POSIX version, -D_XOPEN_SOURCE=600 or -D_POSIX_C_SOURCE=200112L   without -D_GNU_SOURCE is needed, otherwise the GNU version is   preferred.  */# if defined __USE_XOPEN2K && !defined __USE_GNU/* Fill BUF with a string describing the meaning of the `errno' code in   ERRNUM.  */#  ifdef __REDIRECT_NTHextern int __REDIRECT_NTH (strerror_r,			   (int __errnum, char *__buf, size_t __buflen),			   __xpg_strerror_r) __nonnull ((2));#  elseextern int __xpg_strerror_r (int __errnum, char *__buf, size_t __buflen)     __THROW __nonnull ((2));#   define strerror_r __xpg_strerror_r#  endif# else/* If a temporary buffer is required, at most BUFLEN bytes of BUF will be   used.  */extern char *strerror_r (int __errnum, char *__buf, size_t __buflen)     __THROW __nonnull ((2));# endif#endif/* We define this function always since `bzero' is sometimes needed when   the namespace rules does not allow this.  */extern void __bzero (void *__s, size_t __n) __THROW __nonnull ((1));#ifdef __USE_BSD/* Copy N bytes of SRC to DEST (like memmove, but args reversed).  */extern void bcopy (__const void *__src, void *__dest, size_t __n)     __THROW __nonnull ((1, 2));/* Set N bytes of S to 0.  */extern void bzero (void *__s, size_t __n) __THROW __nonnull ((1));/* Compare N bytes of S1 and S2 (same as memcmp).  */extern int bcmp (__const void *__s1, __const void *__s2, size_t __n)     __THROW __attribute_pure__ __nonnull ((1, 2));/* Find the first occurrence of C in S (same as strchr).  */extern char *index (__const char *__s, int __c)     __THROW __attribute_pure__ __nonnull ((1));/* Find the last occurrence of C in S (same as strrchr).  */extern char *rindex (__const char *__s, int __c)     __THROW __attribute_pure__ __nonnull ((1));/* Return the position of the first bit set in I, or 0 if none are set.   The least-significant bit is position 1, the most-significant 32.  */extern int ffs (int __i) __THROW __attribute__ ((__const__));/* The following two functions are non-standard but necessary for non-32 bit   platforms.  */# ifdef	__USE_GNUextern int ffsl (long int __l) __THROW __attribute__ ((__const__));#  ifdef __GNUC____extension__ extern int ffsll (long long int __ll)     __THROW __attribute__ ((__const__));#  endif# endif/* Compare S1 and S2, ignoring case.  */extern int strcasecmp (__const char *__s1, __const char *__s2)     __THROW __attribute_pure__ __nonnull ((1, 2));/* Compare no more than N chars of S1 and S2, ignoring case.  */extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __n)     __THROW __attribute_pure__ __nonnull ((1, 2));#endif /* Use BSD.  */#ifdef	__USE_GNU/* Again versions of a few functions which use the given locale instead   of the global one.  */extern int strcasecmp_l (__const char *__s1, __const char *__s2,			 __locale_t __loc)     __THROW __attribute_pure__ __nonnull ((1, 2, 3));extern int strncasecmp_l (__const char *__s1, __const char *__s2,			  size_t __n, __locale_t __loc)     __THROW __attribute_pure__ __nonnull ((1, 2, 4));#endif#ifdef	__USE_BSD/* Return the next DELIM-delimited token from *STRINGP,   terminating it with a '\0', and update *STRINGP to point past it.  */extern char *strsep (char **__restrict __stringp,		     __const char *__restrict __delim)     __THROW __nonnull ((1, 2));#endif#ifdef	__USE_GNU/* Compare S1 and S2 as strings holding name & indices/version numbers.  */extern int strverscmp (__const char *__s1, __const char *__s2)     __THROW __attribute_pure__ __nonnull ((1, 2));/* Return a string describing the meaning of the signal number in SIG.  */extern char *strsignal (int __sig) __THROW;/* Copy SRC to DEST, returning the address of the terminating '\0' in DEST.  */extern char *__stpcpy (char *__restrict __dest, __const char *__restrict __src)     __THROW __nonnull ((1, 2));extern char *stpcpy (char *__restrict __dest, __const char *__restrict __src)     __THROW __nonnull ((1, 2));/* Copy no more than N characters of SRC to DEST, returning the address of   the last character written into DEST.  */extern char *__stpncpy (char *__restrict __dest,			__const char *__restrict __src, size_t __n)     __THROW __nonnull ((1, 2));extern char *stpncpy (char *__restrict __dest,		      __const char *__restrict __src, size_t __n)     __THROW __nonnull ((1, 2));/* Sautee STRING briskly.  */extern char *strfry (char *__string) __THROW __nonnull ((1));/* Frobnicate N bytes of S.  */extern void *memfrob (void *__s, size_t __n) __THROW __nonnull ((1));# ifndef basename/* Return the file name within directory of FILENAME.  We don't   declare the function if the `basename' macro is available (defined   in <libgen.h>) which makes the XPG version of this function   available.  */extern char *basename (__const char *__filename) __THROW __nonnull ((1));# endif#endif#if defined __GNUC__ && __GNUC__ >= 2# if defined __OPTIMIZE__ && !defined __OPTIMIZE_SIZE__ \     && !defined __NO_INLINE__ && !defined __cplusplus/* When using GNU CC we provide some optimized versions of selected   functions from this header.  There are two kinds of optimizations:   - machine-dependent optimizations, most probably using inline     assembler code; these might be quite expensive since the code     size can increase significantly.     These optimizations are not used unless the symbol	__USE_STRING_INLINES     is defined before including this header.   - machine-independent optimizations which do not increase the     code size significantly and which optimize mainly situations     where one or more arguments are compile-time constants.     These optimizations are used always when the compiler is     taught to optimize.   One can inhibit all optimizations by defining __NO_STRING_INLINES.  *//* Get the machine-dependent optimizations (if any).  */#  include <bits/string.h>/* These are generic optimizations which do not add too much inline code.  */#  include <bits/string2.h># endif# if __USE_FORTIFY_LEVEL > 0 && !defined __cplusplus/* Functions with security checks.  */#  include <bits/string3.h># endif#endif__END_DECLS#endif /* string.h  */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?