LZ问题不是很明确,因为strcmp()本身是字符串处理函数,不知道你是想问这个函数的运用方法还是自己想编一个可以实现此功能的被调函数。两个都跟你说了吧。
1关于strcmp()作为字符串处理函数的运用。
1)在运用时首先要在源程序开始时加上#include<stringh>头文件。
2)函数使用格式:
strcmp(str1,str2);
strcmp("china","korea");
strcmp(str1,"beijing");
以上三种格式均可以使用。
3)规则:对两个字符串自左向右逐个字符相比,按ASCII码值的大小进行比较。直到出现不同的字符或遇到'\0'为止。如果字符全部相同则认为相同,若出现不相同的字符,则以第一个不相同的字符的比较结果为准。
4)返回值:若相等,函数返回值为0;若STR1>STR2则返回一个正整数;若STR1<STR2返回一个负整数。
5)注意:
在c语言中两个字符串的比较不能用:
if(str1==str2) printf("yes");
而只能用:
if(strcmp(str1,str2)==0) printf("yes");
2如果你想实现函数的调用。
1)建议你的函数名改一下,最好不要和系统已经有的函数名冲突。
2)主调函数与被调函数之间无非就是传值。
这是我刚才编的函数调用的方法:
#include <stdioh>
strcmp(char str1[],char str2[])
{
while((str1!='\0')&&(str2!='\0'))
{
if(str1==str2)
{
str1++;
str2++;
}
else
break;
}
if((str1=='\0')||(str2=='\0'))
printf("yes\n");
else
printf("no\n");
}
void main()
{
char str1[]="kakashi";
char str2[]="naruto";
strcmp(str1,str2);
}
希望我的回答能对你有所帮助。
1、cmp
是
compare,比较的缩写。
2、strcmp是c语言中头文件<stringh>(字符串函数)中定义的一个用于对两组字符串进行比较的函数,它的返回值是int类型。
假设有两组字符串cs和ct,当cs<ct时,函数返回一个负数;当cs==ct时,函数返回0;当cs>ct时,函数返回一个正数。
即:两个字符串自左向右逐个字符相比(按ascii值大小相比较),直到出现不同的字符或遇'\0'为止。如:"a"<"b"
,"a">"a"
,"computer">"compare"
,"comput">"comp"
strcmp函数原型为:int
strcmp(const
char
s1,const
char
s2);
就是对两个字符串从左到右逐个字符相比,按ASCII值大小比较,如果出现不同字符或遇到'\0'为止,如果全部字符相等;则认为相等,如果不相等的,按第一个不相等的字符的比较结果为准,
如strmp(str,str),则函数值为0,如果strmp(stra,strb)因为a的askii小于b的,所以函数值为一个负数。
以上就是关于编写函数strcmp()用主函数调用实现两个字符串的比较的C 程序怎么编全部的内容,包括:编写函数strcmp()用主函数调用实现两个字符串的比较的C 程序怎么编、C语言strcmp函数是什么样的代码、c++中strcmp函数如何使用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)