📄 string.h
字号:
#ifndef _LINUX_STRING_H_#define _LINUX_STRING_H_/* We don't want strings.h stuff being user by user stuff by accident */#ifdef __KERNEL__#include <linux/compiler.h> /* for inline */#include <linux/types.h> /* for size_t */#include <linux/stddef.h> /* for NULL */#ifdef __cplusplusextern "C" {#endifextern char *strndup_user(const char __user *, long);/* * Include machine specific inline routines */#include <asm/string.h>#ifndef __HAVE_ARCH_STRCPYextern char * strcpy(char *,const char *);#endif#ifndef __HAVE_ARCH_STRNCPYextern char * strncpy(char *,const char *, __kernel_size_t);#endif#ifndef __HAVE_ARCH_STRLCPYsize_t strlcpy(char *, const char *, size_t);#endif#ifndef __HAVE_ARCH_STRCATextern char * strcat(char *, const char *);#endif#ifndef __HAVE_ARCH_STRNCATextern char * strncat(char *, const char *, __kernel_size_t);#endif#ifndef __HAVE_ARCH_STRLCATextern size_t strlcat(char *, const char *, __kernel_size_t);#endif#ifndef __HAVE_ARCH_STRCMPextern int strcmp(const char *,const char *);#endif#ifndef __HAVE_ARCH_STRNCMPextern int strncmp(const char *,const char *,__kernel_size_t);#endif#ifndef __HAVE_ARCH_STRNICMPextern int strnicmp(const char *, const char *, __kernel_size_t);#endif#ifndef __HAVE_ARCH_STRCHRextern char * strchr(const char *,int);#endif#ifndef __HAVE_ARCH_STRNCHRextern char * strnchr(const char *, size_t, int);#endif#ifndef __HAVE_ARCH_STRRCHRextern char * strrchr(const char *,int);#endifextern char * strstrip(char *);#ifndef __HAVE_ARCH_STRSTRextern char * strstr(const char *,const char *);#endif#ifndef __HAVE_ARCH_STRLENextern __kernel_size_t strlen(const char *);#endif#ifndef __HAVE_ARCH_STRNLENextern __kernel_size_t strnlen(const char *,__kernel_size_t);#endif#ifndef __HAVE_ARCH_STRPBRKextern char * strpbrk(const char *,const char *);#endif#ifndef __HAVE_ARCH_STRSEPextern char * strsep(char **,const char *);#endif#ifndef __HAVE_ARCH_STRSPNextern __kernel_size_t strspn(const char *,const char *);#endif#ifndef __HAVE_ARCH_STRCSPNextern __kernel_size_t strcspn(const char *,const char *);#endif#ifndef __HAVE_ARCH_MEMSETextern void * memset(void *,int,__kernel_size_t);#endif#ifndef __HAVE_ARCH_MEMCPYextern void * memcpy(void *,const void *,__kernel_size_t);#endif#ifndef __HAVE_ARCH_MEMMOVEextern void * memmove(void *,const void *,__kernel_size_t);#endif#ifndef __HAVE_ARCH_MEMSCANextern void * memscan(void *,int,__kernel_size_t);#endif#ifndef __HAVE_ARCH_MEMCMPextern int memcmp(const void *,const void *,__kernel_size_t);#endif#ifndef __HAVE_ARCH_MEMCHRextern void * memchr(const void *,int,__kernel_size_t);#endifextern char *kstrdup(const char *s, gfp_t gfp);extern void *kmemdup(const void *src, size_t len, gfp_t gfp);#ifdef __cplusplus}#endif#endif#endif /* _LINUX_STRING_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -