C 字符串相关的库函数

字符串操作函数

size_t
strlen( char *string );

返回字符串长度

char*
strcpy( char *dst, char const *src );

将src复制到dst

char*
strcat( char *dst, char const *src );

将src接到dst后面

int
strcmp( char const *s1, char const *s2 );

s1 < s2, 返回正值
s1 > s2, 返回负值
s1 = s2, 返回零

char*
strncpy( char *dst, char const *src, size_t len );

char*
strncat( char *dst, char const *src, size_t len );

int
strncmp( char const *s1, char const *s2, size_t len );

限制长度的字符串操作函数

字符串查找函数

char*
strchr( char const *str, int ch );

char*
strrchr( char const *str, int ch );
  • strchr从头向尾找,找到了返回一个指向目标字符的指针,找不到返回NULL
  • strrchr从尾向头找,找到了返回指针,找不到返回NULL
char*
strpbrk( char const *str, char const *group );

strpbrk在str字符串中查找,找到gruop中任意一个字符则返回指针,找不到返回NULL

char*
strstr( char const *s1, char const *s2 );

strstr在s1中查找整个s2第一次出现的起始位置,并返回一个指向该位置的指针。

size_t
strspn( char const *str, char const *group );

size_t
strcspn( char const *str, char const *group );
  • strspn返回str中第一个不包含在group的下标
  • strcspn返回str中第一个包含在group的下标,都不存在返回'\0'的下标
char*
strtok( char *str, char const *sep );

找到第一个空白标记(如空格、回车、缩进),将其设置为\0(后面的内容仍然保留),然后返回一个指向这个标记的指针。

如果strtok函数的第一个参数是NULL,函数在同一个字符串中从这个被保存的位置开始查找下一个标记。

字符类型函数

#include <ctype.h>

isspace()	//空白字符
isdigit()	//十进制数
isxdigit()	//十六进制数, 字母不区分大小写
islower()	//小写字母
isupper()	//大写字母
isalpha()	//字母
isalnum()	//字母或数字
ispunct()	//标点符号
int
tolower( int ch );

大写转小写

int
toupper( int ch );

小写转大写

内存操作

void*
memcpy( void *dst, void const *src, size_t len );
//可用于复制数组

void*
memmove( void *dst, void const *src, size_t len );

void*
memcmp( void const *a, void const *b, size_t len );
//按照无符号字符逐字节比较

void*
memchr( void const *a, int ch, size_t len );

void*
memset( void *a, int ch, size_t len );
//把a的前len个字节设置为字符值ch, 代替自己写一个循环

字符串转换为数值类型

字符串转换为整数

int
atoi( char const *string );

long int
atol( char const *string );

函数会忽略前导空白字符,当字符串中出现非数字的非法字符时,停止转换

字符串转换为浮点数

double
atof( char const *string );

字符的格式化转换

int
sscanf( char const *string, char const *format, ... );

按照format给出的格式转换string写入a

int
sprintf( char *buffer, char const *format, ... );

按照format给出的格式转换a写入string

posted @ 2020-07-14 00:23  LanceHansen  阅读(27)  评论(0编辑  收藏  举报