Linux 常用C函数说明-内存及字符串操作篇(中文版)

strrchr(查找字符串中最后出现的指定字符)

相关函数

index,memchr,rindex,strpbrk,strsep,strspn,strstr,strtok

表头文件

#include

定义函数

char*strrchr(constchar*s,intc);

函数说明

strrchr()用来找出参数s字符串中最后一个出现的参数c地址,然后将该字符出现的地址返回。

返回值

如果找到指定的字符则返回该字符所在地址,否则返回0。

范例

#include

main()

{

char*s="0123456789012345678901234567890";

char*p;

p=strrchr(s,'5');

printf("%s\n",p);

}

执行

567890

strspn(返回字符串中连续不含指定字符串内容的字符数)

相关函数

strcspn,strchr,strpbrk,strsep,strstr

表头文件

#include

定义函数

size_tstrspn(constchar*s,constchar*accept);

函数说明

strspn()从参数s字符串的开头计算连续的字符,而这些字符都完全是accept所指字符串中的字符。简单的说,若strspn()返回的数值为n,则代表字符串s开头连续有n个字符都是属于字符串accept内的字符。

返回值

返回字符串s开头连续包含字符串accept内的字符数目。

范例

#include

main()

{

char*str="Linuxwasfirstdevelopedfor386/486-basedPCs.";

char*t1="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";

printf("%d\n",strspn(str,t1));

}

执行

5/*计算大小写字母。不包含"",所以返回Linux的长度。*/

strstr(在一字符串中查找指定的字符串)

相关函数

index,memchr,rindex,strchr,strpbrk,strsep,strspn,strtok

表头文件

#include

定义函数

char*strstr(constchar*haystack,constchar*needle);

函数说明

strstr()会从字符串haystack中搜寻字符串needle,并将第一次出现的地址返回。

返回值

返回指定字符串第一次出现的地址,否则返回0。

范例

#include

main()

{

char*s="012345678901234567890123456789";

char*p;

p=strstr(s,"901");

printf("%s\n",p);

}

执行

9.01E+21

strtok(分割字符串)

相关函数

index,memchr,rindex,strpbrk,strsep,strspn,strstr

表头文件

#include

定义函数

char*strtok(char*s,constchar*delim);

函数说明

strtok()用来将字符串分割成一个个片段。参数s指向欲分割的字符串,参数delim则为分割字符串,当strtok()在参数s的字符串中发现到参数delim的分割字符时则会将该字符改为\0字符。在第一次调用时,strtok()必需给予参数s字符串,往后的调用则将参数s设置成NULL。每次调用成功则返回下一个分割后的字符串指针。

返回值

返回下一个分割后的字符串指针,如果已无从分割则返回NULL。

范例

#include

main()

{

chars[]="ab-cd:ef;gh:i-jkl;mnop;qrs-tu:vwx-y;z";

char*delim="-:";

char*p;

printf("%s";strtok(s,delim));

while((p=strtok(NULL,delim)))printf("%s",p);

printf("\n");

}

执行

abcdef;ghijkl;mnop;qrstuvwxy;z/*-与:字符已经被\0字符取代*/

相关推荐