C语言字符串函数详解_转换_查找_拼接_复制_比较

1. 常用字符串转换函数

1.1 atof 字符串 - 浮点数

函数类型:double atof(const char *nptr); //string to float;
头文件包含:<math.h>、<stdlib.h>;
返回值: 双精度浮点double类型数据;
转换说明:函数 atof( )将指定的字符串转换为双精度浮点数,字符串 nptr 必须是浮点数的字符表示格式。遇到不可识别的字符时转换结束。

参数说明
nptr要转换的字符串

注:双精度浮点类型长度0.000000,也就是如果要将1转换为double类型,那么输出的结果将是1.000000,。

1.2 atoi 字符串 - 整型

函数类型:int atoi(const char *nptr);
头文件包含:<math.h>、<stdlib.h>
返回值: int整型类型数据;
返回说明:成功转换,返回字符串的整数值,若无法转换,返回0
转换说明:函数 atoi0将指定的字符串转换为整数,其中字符串 nptr 必须是整数字符的表示格式。遇到不可以识别的字符时转换结束。

参数说明
nptr要转换的字符串

注:

  1. “123.123” 转换后结果为123;
  2. “f457gf” 的转换结果返回0,因为该字符串中包含了非数字字符’f’。atoi函数只能将数字字符转换为整数,遇到非数字字符时会停止转换并返回结果;
  3. “57fg8t” 的转换结果为57。

1.3 strlwr 将字符串转换为小写形式

将字符串转换为小写的形式。
函数类型:charstrlwr(chars);
头文件包含:< string.h >;
返回值说明:返回指向转换后的字符串的指针。

参数说明
s要转换的字符串

2. 字符串复制

2.1 stpcpy 复制字符串函数

函数类型:char *stpcpy(char *destin, char *source);
头文件包含:<string.h>
返回值:返回目的字符串与源字符串长度的,即 strlen( destin)+strlen( source)。

参数说明
destin目的字符串
source源字符串

示例:

// 示例
char string[30];
char *strl="Hello,world";
stpcpy(string,str1);

2.2 strcpy 复制字符串函数

函数类型:char *strcpy(char * destin, const char * source);
头文件包含:<string.h>;
返回值:返回字符串 destin;

参数说明
destin目的字符串
source源字符串

2.3 strncpy 复制字符串函数

字符串复制,将一串中指定数目的字符复制到另个串中。
函数类型:char *strncpy(char *destin, char *source, int maxlen);
头文件包含:<string.h>;
返回值类型:返回指向目的串的指针 destin。

参数说明
destin目的字符串
source源字符串
maxlen要复制的最大长度

3. 字符串拼接

3.1 strcat 拼接字符串

字符串拼接,将一个字符串添加到另一个字符串末尾
函数类型:char *strcat(char *destin, char *source);
头文件包含:< string.h >;
返回值类型:返回一个字符串指针,它的值是由字符串 source 连接到 destin 之后形成的。

参数说明
destin目的字符串
source源字符串

3.2 strncat 字符串拼接

字符串拼接,将一个字符串添加到另一个字符串末尾
函数类型:char *strncat(char *destin, char *source, size t maxlen);
头文件包含:< sting.h >;
返回值说明:返回一个字符串指针,它的值是由字符串 source 连接到 destin 之后形成的。

参数说明
destin目的字符串
source源字符串
maxlendestin 字符串最终的最大长度

4. 字符串查找

4.1 strchr 查找给定的字符串

在一个字符串中查找给定字符的第一个匹配之处。
函数类型:char *strchr(char *str, char c);
头文件包含:<string.h>
返回值说明:在字符串 str 中寻找 c,并把第一次出现该字符的指针位置返回。若没有找到字符c,则返回空指针“0”或“NULL”

参数说明
str要扫描的字符串
c给定一个需要查找的字符

5. 字符串比较

5.1 strcmp 比较字符串

比较两个字符串。
函数类型:int strcmp(char *str1, char *str2);
头文件包含:< string.h >
返回说明:返回0,表示字符串 str1 与 str2 相同;返回负数,表示字符串 str1<str2;返回正数,表示字符串 str1>str2,总之不为0不相等

参数说明
str1需要比较的字符串1
str2需要比较的字符串2

注:在C语言中,字符串的大小规定如下。
(1)若两个字符串字符序列完全相同,则这两个字符串相等:
”CGVFFRT" = "CGVFFRT”;
(2) 开头字母的 ASCII码较小的字符串较小,如:
“apple”<“orange”,“Apple”>“apple”;
(3)开头字母相同,则比较第二个字母,第二个字母 ASCII码小的字符串较小;
(4)若两个字符串开始的一串字符相同,则较短的那个字符串较小;
(5)空字符串小于任何非空字符串。

5.2 strcmpi 比较两个字符串 不区分大小写

比较两个字符串 不区分大小写。
函数类型:int strncmpi(char *strl, char *str2);
头文件包含:< string.h >;
返回值:返回0,表示字符串 str1与 str2 相同; 返回负数,返回表示字符串 str1<str2; 返回正数,表示字符串 str1>str2。

参数说明
str1需要比较的字符串1
str2需要比较的字符串2

5.3 stricmp 比较字符串

字符串比较,不区分大小写。
函数类型:int stricmp(char *strl, char *str2);
头文件包含:< string.h >;
返回值:返回0,表示字符串 str1与 str2 相同; 返回负数,返回表示字符串 str1<str2; 返回正数,表示字符串 str1>str2。

参数说明
str1需要比较的字符串1
str2需要比较的字符串2

5.4 strncmp 字符串部分比较函数

将一字符串中的一部分与另一字符串的一部分比较。
函数类型:int strncmp(char *strl, char *str2, size_t maxlen);
头文件包含:<string.h>;
返回值说明:返回0,表示字符串 str1与 str2 相同;返回负数,表字符串str1<str2;返回正数,表示字符串str1>str2。

参数说明
str1需要比较的字符串1
str2需要比较的字符串2
maxlen需要比较的长度

注:函数 strncmp 比较两个字符串中的一部分,比较从第一个字符开始如果遇到对应的不同字符或参数 maxlen 指定的字符数已比较过,则结束较过程。

6. 获取字符串长度

6.1 strlen 获取字符长度

获取字符串长度。
函数类型:size_t strlen ( const char *str );
头文件包含:<string.h>;
返回值类型:无符号整型,size_t;
注:函数strlen 用于获取 str 字符串的长度字符串终止符 NULL不计入长度值。

6.2 sizeof 获取字符长度

用法同 strlen,不同的是终止符NULL(/0)会被计算在内(1byte)。

7. 字符串排列

7.1 字符串排列顺序倒叙

将一字符串的顺序倒叙逆转。
函数类型:char *strrev(char *str);
头文件包含:< string.h >;
返回值类型:返回指向结果字符串的指针,即逆转后的字符串。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LuDvei

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值