当前位置:首页 » 编程语言 » c语言字符串相同

c语言字符串相同

发布时间: 2024-07-06 03:35:47

c语言中判断两个字符串是否相同的方法

C语言提供了几个标准库函数,可以比较两个字符串是否相同。以下是用strcmp()函数比较字符串的一个例子:

#include <stdio. h>
#include <string. h>
void main (void);
void 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 equalto str_3.\n");
}

上例的打印输出如下所示:
str_1 is equal to str_2.
str_1 is not equal to str_3.

strcmp()函数有两个参数,即要比较的两个字符串。strcmp()函数对两个字符串进行大小写敏感的(case-sensitiVe)和字典式的(lexicographic)比较,并返回下列值之一:
----------------------------------------------------
返 回 值 意 义
----------------------------------------------------
<0 第一个字符串小于第二个字符串
0 两个字符串相等 ·
>0 第一个字符串大于第二个字符串
----------------------------------------------------
在上例中,当比较str_1(即“abc”)和str_2(即“abc”)时,strcmp()函数的返回值为0。然而,当比较str_1(即"abc")和str_3(即"ABC")时,strcmp()函数返回一个大于0的值,因为按ASCII顺序字符串“ABC”小于“abc”。
strcmp()函数有许多变体,它们的基本功能是相同的,都是比较两个字符串,但其它地方稍有差别。下表列出了C语言提供的与strcmp()函数类似的一些函数:
-----------------------------------------------------------------
函 数 名 作 用
-----------------------------------------------------------------
strcmp() 对两个字符串进行大小写敏感的比较
strcmpi() 对两个字符串进行大小写不敏感的比较
stricmp() 同strcmpi()
strncmp() 对两个字符串的一部分进行大小写敏感的比较
strnicmp() 对两个字符串的一部分进行大小写不敏感的比较
-----------------------------------------------------------------
在前面的例子中,如果用strcmpi()函数代替strcmp()函数,则程序将认为字符串“ABC”等于“abc”。

② c语言中如何判断两个字符串相等

可以使用库函数strcmp判断,具体如下:

strcmp是C语言比较字符串的库函数,形式为int strcmp(char *a, char *b);

该函数会对a和b的每个字符,按照ascii码值比较,如果二者完全相同返回0;如果a的ascii码值先出现较大者,会返回1;否则返回-1。

所以,要判断字符串相等,可以使用。

(2)c语言字符串相同扩展阅读:

关于上述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. ");

else

printf("str_1 is not equal to str_2. ");

if (strcmp(str_1, str_3) == 0)

printf("str_1 is equal to str_3. ");

else

printf("str_1 is not equal to str_3. ");

return 0;

}

参考资料来源:字符串-网络

③ C语言怎么编写:请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉。

结果出来了,你看看吧,满意请采纳

#include<stdio.h>
#include<string.h>
voidfinddd(charx[]);

intmain()
{
chara[150];
char*aa;
inta1;
inti;

printf("请输入任意的字符串:");
gets(a);
finddd(a);
return0;
}

voidfinddd(charx[])//不带数据返回
{
inti,shu=0;
charaa[100];
intaaa[200]={0};

for(i=0;i<strlen(x);i++)
{
if(aaa[x[i]]==0)
{
aaa[x[i]]=1;
aa[shu++]=x[i];
}
}
aa[shu++]='';

printf("剔除重复字符后的字符串:%s ",aa);
}

热点内容
glb怎么选配置 发布:2024-07-09 07:28:35 浏览:220
emc存储维护 发布:2024-07-09 07:28:34 浏览:873
分布式数据库的应用 发布:2024-07-09 07:16:20 浏览:36
倩女脚本辅助 发布:2024-07-09 07:03:58 浏览:367
学编程需要什么电脑 发布:2024-07-09 06:43:10 浏览:835
矩阵解压缩 发布:2024-07-09 06:36:55 浏览:554
rom只读存储器只能读出内容 发布:2024-07-09 05:56:07 浏览:273
java如何创建对象 发布:2024-07-09 05:44:09 浏览:868
微站网源码 发布:2024-07-09 05:32:13 浏览:996
java反射获取注解 发布:2024-07-09 05:23:45 浏览:94