字符串操作(String Manipulation)¶
strncasecmp¶
函数签名:
int strncasecmp(const char *s1, const char *s2, size_t len);
说明: 大小写不敏感的大小比较
返回值:
参数:
s1:s2:s3: 要比较的最大字符数
strcpy¶
函数参数:
char *strcpy(char *dest, const char *src);
说明: 字符串复制
返回值:
参数:
dest:src:
strncpy¶
函数参数:
char *strncpy(char *dest, const char *src, size_t count);
说明: 字符串复制
返回值:
参数:
dest:src:count:
strlcpy¶
函数签名:
size_t strlcpy(char *dest, const char *src, size_t size);
说明: 将字符串复制到指定大小的缓存区
返回值:
参数:
dest: 要复制到的位置src: 被复制的字符串size: 目标位置的大小
strscpy¶
函数签名:
ssize_t strscpy(char *dest, const char *src, size_t count);
说明: 将字符串复制到指定大小的缓存区
返回值:
参数:
dest: 要复制到的位置src: 被复制的字符串size: 目标位置的大小
stpcpy¶
函数签名:
char *stpcpy(char *__restrict__ dest, const char *__restrict__ src);
说明: 将字符串从src复制到dest,返回指向dest新结束的指针,包括src的空结束符。可能会溢出。
返回值:
参数:
dest:src:
strcat¶
函数签名:
char *strcat(char *dest, const char *src);
说明: 将一个以null结尾的字符串追加到另一个字符串
返回值:
参数:
dest:src:
strncat¶
函数签名:
char *strncat(char *dest, const char *src, size_t count);
说明: 将长度限制为count的字符串追加到另一个字符串末尾
返回值:
参数:
dest: 要追加的位置src: 被追加的buffercount: 被复制buffer 的长度
strlcat¶
函数签名:
size_t strlcat(char *dest, const char *src, size_t count);
说明:
返回值:
参数:
destsrccount
strcmp¶
函数签名:
int strcmp(const char *cs, const char *ct);
说明: 比较两个字符串大小
返回值:
参数:
cs: 字符串1ct: 字符串2
strncmp¶
函数签名:
int strncmp(const char *cs, const char *ct, size_t count);
说明: 比较两个字符串大小
返回值:
参数:
cs: 字符串1ct: 字符串2count: 要比较的字符串的最大长度
strchr¶
函数签名:
char *strchr(const char *s, int c);
说明:
查找字符串中第一次出现字符c的地方
返回值:
参数:
s: 被查找的字符串c: 要查找的字符
strchrnul¶
函数签名:
char *strchrnul(const char *s, int c);
说明: 查找并返回字符串中的字符或字符串的结尾
返回值:
参数:
s: 被查找的字符串c: 要查找的字符
strrchr¶
函数签名:
char *strrchr(const char *s, int c)
说明:
返回值:
参数:
s:c:
strnchr¶
函数签名:
char *strnchr(const char *s, size_t count, int c);
说明:
返回值:
参数:
s: 字符串count: 要搜索的字符数c: 要查找的字符
strlen¶
函数签名:
size_t strlen(const char *s);
说明: 计算字符串的长度
返回值:
参数:
s: 要计算长度的字符串
strnlen¶
函数签名:
size_t strnlen(const char *s, size_t count);
说明: 获取字符串长度
返回值:
参数:
s: 要计算长度的字符串count: 要查找的最大长度(这种应该在s是数组时候使用)
strspn¶
函数签名:
size_t strspn(const char *s, const char *accept);
说明:
在 s 中搜索 accept 子串,返回其在 s 中的位置
返回值:
参数:
s: 被搜索的字符串accept: 要搜索的字符串
strcspn¶
函数签名:
size_t strcspn(const char *s, const char *reject);
说明:
在 s 中搜索不包含 reject 子串的位置
返回值:
参数:
s: 被搜索的字符串reject: 要搜索的子串
strpbrk¶
函数签名:
char *strpbrk(const char *cs, const char *ct);
说明:
查找 ct 在 cs 中第一次出现的位置
返回值:
参数:
cs: 被查找的字符串ct: 要查找的子串
strsep¶
函数签名:
char *strsep(char **s, const char *ct);
说明:
按 ct 切割字符串 s
返回值:
参数:
s: 被切割的字符串ct: 切割符
memset¶
函数签名:
void *memset(void *s, int c, size_t count);
说明:
将首地址为 s 长度为 count 的内存用字符 c 填充
返回值: 无
参数:
s: 被填充的内存首地址c: 被填充的字符count: 被填充的内存大小
memset16¶
函数签名:
void *memset16(uint16_t *s, uint16_t v, size_t count);
说明: 同上
返回值: 无
参数:
s: 内存开始区域v: 要填充的值count: 内存大小
memset32¶
函数签名:
void *memset32(uint32_t *s, uint32_t v, size_t count);
说明: 同上
返回值: 无
参数:
s: 内存开始区域v: 要填充的值count: 内存大小
memset64¶
函数签名:
void *memset64(uint64_t *s, uint64_t v, size_t count);
说明: 同上
返回值: 无
参数:
s: 内存开始区域v: 要填充的值count: 内存大小
memcpy¶
函数签名:
void *memcpy(void *dest, const void *src, size_t count);
说明: 同上
返回值: 无
参数:
dest:src:count:
memmove¶
函数签名:
void *memmove(void *dest, const void *src, size_t count);
说明: 将一个区域的内存复制到另一个区域
返回值:
参数:
dest:src:count:
memcmp¶
函数签名:
__visible int memcmp(const void *cs, const void *ct, size_t count);
说明:
返回值:
参数:
cs:ct:count:
bcmp¶
函数签名:
int bcmp(const void *a, const void *b, size_t len);
说明:
返回值:
参数:
a:c:len:
memscan¶
函数签名:
void *memscan(void *addr, int c, size_t size);
说明:
在内存 addr 中查找字符 c
返回值:
参数:
addr: 要查找的内存区域首地址c: 要查找的字符size: 内存区域的大小
strstr¶
函数签名:
char *strstr(const char *s1, const char *s2);
说明:
返回值:
参数:
s1:s2:
strnstr¶
函数签名:
char *strnstr(const char *s1, const char *s2, size_t len);
说明:
返回值:
参数:
s1:s2:len:
memchr¶
函数签名:
void *memchr(const void *s, int c, size_t n);
说明:
从内存s中查找字符c
返回值:
参数:
s:c:n: 内存s的大小
memchr_inv¶
函数签名:
void *memchr_inv(const void *start, int c, size_t bytes);
说明:
从内存中找到不包含字符c的位置
参数:
start: 内存起始地址c: 内存中查找不包含的字符cbytes: 内存大小
sysfs_match_string¶
函数签名:
sysfs_match_string (_a, _s);
说明:
在 _a 数组中匹配_s字符串
返回值:
参数:
_a: 字符数组_s: 要查找的字符串
strstarts¶
函数签名:
bool strstarts(const char *str, const char *prefix);
说明:
检测字符串 str 是否以子串 prefix 开始
返回值:
参数:
str: 字符串prefix: 子串
memzero_explicit¶
函数签名:
void memzero_explicit(void *s, size_t count);
说明: 用 0 填充内存区域
返回值:
参数:
s: 要填充的内存首地址count: 要填充的大小
kbasename¶
函数签名:
const char *kbasename(const char *path);
说明: 返回文件名
返回值:
参数:
path
strtomem_pad¶
函数签名:
strtomem_pad (dest, src, pad);
说明:
返回值:
参数:
dest:src:pad:
strtomem¶
函数签名:
strtomem (dest, src)
说明: 复制字符串
返回值:
参数:
dest:src:
memset_after¶
函数签名:
memset_after (obj, v, member);
说明: 在结构成员之后设置一个值到结构的末尾
返回值:
参数:
obj:v:member:
memset_startat¶
函数签名:
memset_startat (obj, v, member);
说明:
返回值:
参数:
obj:v:member:
str_has_prefix¶
函数签名:
size_t str_has_prefix(const char *str, const char *prefix);
说明:
检查字符串str是否以prefix开头
返回值:
参数:
str: 字符串prefix: 子串
kstrdup¶
函数签名:
char *kstrdup(const char *s, gfp_t gfp);
说明:
复制字符串s并返回
返回值:
参数:
s: 要复制的字符串gfp: kmalloc调用的 GFP flags
kstrdup_const¶
函数签名:
const char *kstrdup_const(const char *s, gfp_t gfp);
说明: 有条件的复制现有的const字符串
返回值:
参数:
s: 同上gfp: 同上
kstrndup¶
函数签名:
char *kstrndup(const char *s, size_t max, gfp_t gfp);
说明:
返回值:
参数:
s: 要复制字符串的首地址max: 要复制字符串的大小gfp:
kmemdup¶
函数签名:
void *kmemdup(const void *src, size_t len, gfp_t gfp);
说明:
返回值:
参数:
src:len:gfp:
kmemdup_null¶
函数签名:
char *kmemdup_nul(const char *s, size_t len, gfp_t gfp);
说明: 创建以 nul 结束的字符串
返回值:
参数:
s:len:gfp:
memdup_user¶
函数签名:
void *memdup_user(const void __user *src, size_t len);
说明: 从用户空间复制内存
返回值:
参数:
src: 用户空间的指针len: 要复制的字节数
vmemdup_user¶
函数签名:
void *vmemdup_user(const void __user *src, size_t len);
说明: 从用户空间复制内存
返回值:
参数:
src: 用户空间的指针len: 要复制的字节数
strndup_user¶
函数签名:
char *strndup_user(const char __user *s, long n);
说明: 从用户空间复制内存,包含字符串结束符
返回值:
参数:
s: 用户空间的指针n: 要复制的字节数
memdup_user_nul¶
函数签名:
void *memdup_user_nul(const void __user *src, size_t len);
说明: 复制用户空间字符串并且添加结束标志
返回值:
参数:
src: 用户空间的指针len: 要复制的字节数