1. str()函数返回的数据类型
strcmp函数是比较两个字符串的大小,返回比较的结果。一般形式是:
i=strcmp(字符串,字符串);
①字符串1小于字符串2,strcmp函数返回一个负值;
②字符串1等于字符串2,strcmp函数返回零;
③字符串1大于字符串2,strcmp函数返回一个正值;
strcpy函数用于实现两个字符串的拷贝。一般形式是:
strcpy(字符中1,字符串2)
其中,字符串1必须是字符串变量,而不能是字符串常量。strcpy函数把字符串2的内容完全复制到字符串1中,而不管字符串1中原先存放的是什么。复制后,字符串2保持不变。
2. str返回值
strcmp函数的作用:strcmp函数是比较两个字符串的大小,返回比较的结果。
比较结果是这样规定的:
1、字符串1小于字符串2,strcmp函数返回一个负值。
2、字符串1等于字符串2,strcmp函数返回零。
3、字符串1大于字符串2,strcmp函数返回一个正值。
特别注意:
strcmp(const char *s1,const char * s2)这里面只能比较字符串,即可用于比较两个字符串常量,或比较数组和字符串常量,不能比较数字等其他形式的参数。
ANSI标准规定,返回值为正数,负数,0 。而确切数值是依赖不同的C实现的。
当两个字符串不相等时,C标准没有规定返回值会是1 或 -1,只规定了正数和负数。
有些会把两个字符的ASCII码之差作为比较结果由函数值返回。但无论如何不能以此条依据作为程序中的流程逻辑。
3. str返回值类型
strcmp函数用于两个字符串的比较,具体用法如下:
1、strcmp函数接受两个字符串类型的参数传入,根据比较结果返回一个int类型的值。
2、若返回结果的值小于 0,则表示在ASCII码上, str1字符串 小于 str2字符串。
3、若返回结果返回值 大于0,则代表 str2字符串 小于 str1字符串。
4、只有当返回值 为0时,两个字符串才是相同的。
4. strstr的返回值类型
函数str() 用于将值转化为适于人阅读的形式,而repr() 转化为供解释器读取的形式
内建函数str()和repr() (representation,表达,表示)或反引号操作符(``)可以方便地以字符串的方式获取对象的内容、类型、数值属性等信息。
str()函数得到的字符串可读性好(故被print调用)
repr()函数得到的字符串通常可以用来重新获得该对象,通常情况下 obj==eval(repr(obj)) 这个等式是成立的。这两个函数接受一个对象作为其参数,返回适当的字符串。
事实上repr()和``做一样的事情,返回一个对象的“官方”字符串表示。其结果绝大多数情况下(不是所有)可以通过求值运算(内建函数eval())重新得到该对象。
str()则不同,它生成一个对象的可读性好的字符串表示,结果通常无法用eval()求值,但适合print输出。
5. strlen函数返回值类型
C语言提供了丰富的字符串处理函数,大致可分为字符串的输入、输出、合并、修改、比较、转换、复制、搜索几类。使用这些函数可大大减轻编程的负担。用于输入输出的字符串函数,在使用前应包含头文件"stdio.h";使用其它字符串函数则应包含头文件"string.h"。下面介绍几个最常用的字符串函数。
1.字符串输出函数puts格式:puts(字符数组名)功能:把字符数组中的字符串输出到显示器。即在屏幕上显示该字符串 #include"stdio.h" main() { staticcharc[]="BASIC\ndBASE"; puts(c); }
2.字符串输入函数gets格式:gets(字符数组名)功能:从标准输入设备键盘上输入一个字符串。本函数得到一个函数值,即为该字符数组的首地址。 #include"stdio.h" main() { charst[15]; printf("inputstring:\n"); gets(st); puts(st); }
3.字符串连接函数strcat格式:strcat(字符数组名1,字符数组名2)功能:把字符数组2中的字符串连接到字符数组1中字符串的后面,并删去字符串1后的串标志“\0”。本函数返回值是字符数组1的首地址。 #include"string.h" main() { staticcharst1[30]="Mynameis"; intst2[10]; printf("inputyourname:\n"); gets(st2); strcat(st1,st2); puts(st1); }
4.字符串拷贝函数strcpy格式:strcpy(字符数组名1,字符数组名2)功能:把字符数组2中的字符串拷贝到字符数组1中。串结束标志“\0”也一同拷贝。字符数名2,也可以是一个字符串常量。这时相当于把一个字符串赋予一个字符数组。 #include"string.h" main() { staticcharst1[15],st2[]="CLanguage"; strcpy(st1,st2); puts(st1);printf("\n"); }
5.字符串比较函数strcmp格式:strcmp(字符数组名1,字符数组名2)功能:按照ASCII码顺序比较两个数组中的字符串,并由函数返回值返回比较结果。 字符串1=字符串2,返回值=0; 字符串2〉字符串2,返回值〉0; 字符串1〈字符串2,返回值〈0。 本函数也可用于比较两个字符串常量,或比较数组和字符串常量。 #include"string.h" main() {intk; staticcharst1[15],st2[]="CLanguage"; printf("inputastring:\n"); gets(st1); k=strcmp(st1,st2); if(k==0)printf("st1=st2\n"); if(k>0)printf("st1>st2\n"); if(k<0)printf("st1<st2\n"); }
6.测字符串长度函数strlen格式:strlen(字符数组名)功能:测字符串的实际长度(不含字符串结束标志‘\0’)并作为函数返回值。 #include"string.h" main() {intk; staticcharst[]="Clanguage"; k=strlen(st); printf("Thelenthofthestringis%d\n",k); }
6. STR函数
1.puts(字符数组) 输出
2.gets(字符数组) 输入
3.strcat(字符数组1,字符数组2) 字符串2接到字符串1的后面
4.strcpy和strncpy(字符数组1,字符串2,m) 将字符串2的前m个字符拷到str1中,最后加'\0'
5.strcmp(字符串1,字符串2) 两字符串比较
6.strlen(字符数组) 字符串的实际长度(不包括'\0')
7.strlwr(字符串) 大写转换为小写
8.strupr(字符串) 小写转换为大写
7. str什么函数
C语言函数
包含文件:string.h
函数名: strstr
函数原型:
1 extern char *strstr(char *str1, const char *str2);
语法:
1 * strstr(str1,str2)
str1: 被查找目标 string expression to search.
str2: 要查找对象 The string expression to find.
返回值:若str2是str1的子串,则返回str2在str1的首次出现的地址;如果str2不是str1的子串,则返回NULL。
8. c语言strstr函数返回值
返回的是:数字
strpos() 函数用于查找字符串在另一字符串中第一次出现的位置,如果在字符串中找到指定的字符串,则返回从0开始找到的位置,如果找不到,则返回逻辑值0。
9. str字符串函数
str 表示字符串类 也可以是将变量强制转换为字符串的函数
10. str函数详解
strstr()函数是标准C语言函数,在linux系统下,运行命令man strstr 可以看到strstr()函数原型为:
$ man strstrSYNOPSIS #include <string.h> char *strstr(const char *haystack, const char *needle);DESCRIPTION The strstr() function finds the first occurrence of the substring needle in the string haystack. The terminating '\0' characters are not compared.
函数功能描述: strstr()函数查找needle(第二个参数)在字符串haystack(第一个参数)中首次出现的位置。如果找到,则返回子串首位置的指针值,否则返回NULL。
如果想将指针位置转换成相应的字符偏移位置,可以用返回指针与字符串haystack指针进行相减运算,得到偏移值。参考代码和运行结果如下: