C语言学习常用函数

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C语言学习常用函数

1.strstr()和strrchr()if (strstr(buff, "ION BETA") != NULL)判断

包含文件:string.h

函数名: strstr

函数原型:extern char *strstr(const char *str1, const char *str2);

语法:* strstr(str1,str2)

str1: 被查找目标string expression to search.

str2: 要查找对象The string expression to find.

返回值:若str2是str1的子串,则先确定str2在str1的第一次出现的位置,并返回此位置到str1末尾的所有字符;如果str2不是str1的子串,则返回NULL。(注:若想返回str2在str1第一次出现的位置,不是这个函数)。

例子:

charstr[]="1234xyz";

char*str1=strstr(str,"34");

cout<

显示: 34xyz

函数名称:strrchr()相比strstr多了一r表示从右边开始查找

函数原型:char *strrchr(const char *str, char c);

所属库:string.h

函数功能:查找一个字符c在另一个字符串str中末次出现的位置(也就是从str的右侧开始查找字符c首次出现的位置),并返回从字符串中的这个位置起,一直到字符串结束的所有字符。如果未能找到指定字符,那么函数将返回NULL。

#include

#include

int main(void)

{

char string[20];

char *ptr, c = 'r';

strcpy(string, "There are two rings");

ptr = strrchr(string, c);

if (ptr)

printf("The character %c is at position: %s\n", c, ptr);

else

printf("The character was not found\n");

return 0;

}

strrchr返回的指针应当指向"rings"里的'r',而不是“There”或"are"里的'r'。

运行结果是:The character r is at position:rings

2.strcmp(),strncmp(),strncpy(),strcpy()

原型:extern int strcmp(const char *s1,const char * s2);

所在头文件:string.h

功能:比较字符串s1和s2。

一般形式:strcmp(字符串1,字符串2)

说明:

当s1

当s1=s2时,返回值= 0

当s1>s2时,返回正数

即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。如:"A"<"B" "a">"A" "computer">"compare"

特别注意:strcmp(const char *s1,const char * s2)这里面只能比较字符串,不能比较数字等其他形式的参数。

用法:int strncmp(char *str1, char *str2, int maxlen);

说明:此函数功能即比较字符串str1和str2的前maxlen个字符。

1.如果前maxlen字节完全相等,返回值就=0;

2.在前maxlen字节比较过程中,如果出现str1[n]与str2[n]不等,则返回(str1[n]-str2[n])。

3.springf(),printf(),fprintf()

函数功能:把格式化的数据写入某个字符串

函数原型:int sprintf( char *buffer, const char *format *, argument+ … );

返回值:字符串长度(strlen)

例子:

char* who = "I";

char* whom = "CSDN";

sprintf(s, "%s love %s.", who, whom); //产生:"I love CSDN. " 这字符串写到s中

sprintf(s, "%10.3f", 3.1415626); //产生:" 3.142

注意:在将各种类型的数据构造成字符串时,sprintf 的强大功能很少会让你失望。由于sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出。这也导致sprintf 比printf 有用得多。

4.substr()

函数功能:substr是C++语言函数,主要功能是复制子字符串,要求从指定位置开始,并具有指定的长度。

定义:substr(size_type_off=0,size_type_count=npos)

参数:_off所需子字符串的起始位置,字符串中第一个字符索引为0,默认为0.

count复制字符数目.

返回值为:子字符串.

备注:若没有制定字符串的长度或者字符串长度超出范围,则返回一个空字符串.

例子:

string str,ss;

str=”hello world”;

ss=substr(3,4);

相关文档
最新文档