正文
C语言两个字符串比较函数 c中比较两个字符串
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
c语言中如何判断两个字符串相等
可以使用库函数strcmp判断,具体如下:
strcmp是C语言比较字符串的库函数,形式为int strcmp(char *a, char *b);
该函数会对a和b的每个字符,按照ascii码值比较,如果二者完全相同返回0;如果a的ascii码值先出现较大者,会返回1;否则返回-1。
所以,要判断字符串相等,可以使用。
扩展资料:
关于上述strcmp()函数比较字符串的例子
#include stdio.h
#include string.h
int main(void)
{
char str_1[] = "abc";
char str_2[] = "abc";
char str_3[] = "ABC";
if (strcmp(str_1, str_2) == 0)
printf("str_1 is equal to str_2. \n");
else
printf("str_1 is not equal to str_2. \n");
if (strcmp(str_1, str_3) == 0)
printf("str_1 is equal to str_3.\n");
else
printf("str_1 is not equal to str_3.\n");
return 0;
}
参考资料来源:字符串-百度百科
C语言中如何比较两个【字符】或者【字符串】是否相等?
C语言中用strcmp函数比较字符和字符串是否相等。
strcmp函数功能是比较两个字符串的大小,返回比较的结果。
函数形式:strcmp(str1,str2)
参数说明:str1,str2可以是字符串常量或变量。
结果说明:
①返回值小于0,说明str1小于str2。
②返回值等于0,说明str1与str2相等。
③返回值大于0,s说明str1大于str2。
编写一个C语言函数,比较两个字符串的大小
#includestdio.h
#define
N
100
int
input(char*a,char*b)//输入两个字符串
{
printf("Input
the
first
information:\n");
fgets(a,N,stdin);
printf("Input
the
secend
information:\n");
fgets(b,N,stdin);
}
int
my_strcmp(char*a,char*b)//比较字符串每个字符的大小
{
while((*a!='\0')(*b!='\0'))
{
if(*a*b)
{
return
0;
}
else
if(*a*b)
{
return
1;
}
else
{
a++;
b++;
}
}
if((*a=='\0')(*b!='\0'))//字符串b比字符串a长
{
return
1;
}
else
if((*a!='\0')(*b=='\0'))//字符串a比字符串b长
{
return
0;
}
else
{
return
2;
}
}
int
main()
{
char
a[N]={0};
char
b[N]={0};
int
net2=0;
input(a,b);//调用输入函数
net2=my_strcmp(a,b);//调用比较大小函数
if(0==net2)//输出大小
{
printf("ab\n");
}
else
if(1==net2)
{
printf("ab\n");
}
else
{
printf("a=b\n");
}
return
0;
}
扩展资料:
一、return在函数中的作用
我们如果将函数看做一个加工厂,参数就是我们向加工厂投入的原料,具体的函数功能实际上就是加工的过程,而return语句代表返回值,就是加工厂在实现加工之后给“投资人”的成品。
二、return语句的特点
1、在函数当中,遇到return语句之后就意味着函数运行的结束,在此之后的代码是不运行的。
2、它不支持任何运算也没有任何内建方法,和任何其他的数据类型比较是否相等时永远返回false,也可以将None赋值给任何变量。
3、执行到return语句时,会退出函数,return之后的语句不再执行。但将return语句放在try语句块中,是个例外。
三、return的默认值:return函数默认的返回值为undefined。
C语言中判断两个字符串是否相同的方法有哪些?
C语言提供了几个标准库函数,可以比较两个字符串是否相同。以下是用strcmp()函数比较字符串的一个例子:\x0d\x0a \x0d\x0a#include \x0d\x0a#include \x0d\x0avoid main (void);\x0d\x0avoid main(void)\x0d\x0a{\x0d\x0a char* str_1 = "abc" ; char * str_2 = "abc" ; char* str_3 = "ABC" ;\x0d\x0a if (strcmp(str_1, str_2) == 0)\x0d\x0a printf("str_1 is equal to str_2. \n");\x0d\x0a else\x0d\x0a printf("str_1 is not equal to str_2. \n");\x0d\x0a if (strcmp(str_1, str_3) == 0)\x0d\x0a printf("str_1 is equal to str_3.\n");\x0d\x0a else\x0d\x0a printf("str_1 is not equalto str_3.\n");\x0d\x0a}\x0d\x0a \x0d\x0a上例的打印输出如下所示: \x0d\x0a str_1 is equal to str_2. \x0d\x0a str_1 is not equal to str_3.\x0d\x0a \x0d\x0astrcmp()函数有两个参数,即要比较的两个字符串。strcmp()函数对两个字符串进行大小写敏感的(case-sensitiVe)和字典式的(lexicographic)比较,并返回下列值之一:\x0d\x0a----------------------------------------------------\x0d\x0a 返 回 值 意 义\x0d\x0a----------------------------------------------------\x0d\x0a 0 第一个字符串大于第二个字符串\x0d\x0a----------------------------------------------------\x0d\x0a在上例中,当比较str_1(即“abc”)和str_2(即“abc”)时,strcmp()函数的返回值为0。然而,当比较str_1(即"abc")和str_3(即"ABC")时,strcmp()函数返回一个大于0的值,因为按ASCII顺序字符串“ABC”小于“abc”。\x0d\x0astrcmp()函数有许多变体,它们的基本功能是相同的,都是比较两个字符串,但其它地方稍有差别。下表列出了C语言提供的与strcmp()函数类似的一些函数: \x0d\x0a-----------------------------------------------------------------\x0d\x0a 函 数 名 作 用\x0d\x0a-----------------------------------------------------------------\x0d\x0a strcmp() 对两个字符串进行大小写敏感的比较\x0d\x0a strcmpi() 对两个字符串进行大小写不敏感的比较\x0d\x0a stricmp() 同strcmpi()\x0d\x0a strncmp() 对两个字符串的一部分进行大小写敏感的比较\x0d\x0a strnicmp() 对两个字符串的一部分进行大小写不敏感的比较\x0d\x0a-----------------------------------------------------------------\x0d\x0a在前面的例子中,如果用strcmpi()函数代替strcmp()函数,则程序将认为字符串“ABC”等于“abc”。
c语言中比较两个字符串的大小
在C语言中比较字符串大小,可以使用库函数strcmp,也可以自己编写比较函数。
1、使用库函数。
需要包含头文件string.h。声明为:
int strcmp(const char *s1, const char *s2);
会根据字典序比较s1和s2, 如果二者相等,则返回0;如果s1较小则返回-1;如果s1较大则返回1。
比如
strcmp("123", "123") 结果为0。
strcmp("123", "456") 结果为-1。
strcmp("456", "123") 结果为1。
2、自定义函数。
实现字符串比较的方法有很多,其基本原理为按字节比较。
举例如下:
int my_strcmp(char *s1, char *s2)
{
int i;
for(i = 0; s1[i] == s2[i] s1[i]!=0; i++);//循环比较,达到结束或者出现不相等值时退出循环。
if(s1[i] == s2[i]) return 0;//代表全部相等,返回0
if(s1[i]s2[i]) return -1;//s1较小,返回-1。
return 1;//s1较大,返回1.
}
关于C语言两个字符串比较函数和c中比较两个字符串的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。