c语言对汉字比较的函数 c语言中如何比较中文字符

C语言里用什么函数判断汉字相同啊

首先一个汉字占2个字节,C语言一个char字符类型占1个字节,也就是在程序中汉字要当做字符串去处理。在C语言中就要用到char*指针或char[]字符数组来记录汉字。

创新互联长期为上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为衡水企业提供专业的成都网站建设、成都网站设计,衡水网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。

判断相同,也就是字符串比较了,用string.h库念悉弊中的strcmp(s1,s2)字符串比较函数解决判断相同问题。

示例程序:

#include stdio.h

#include string.h

void main()

{

char str1[255];

char* str2 = "汉字";

printf("please enter a string:");

scanf("%s", str1);

if (strcmp(str1, str2) == 0) {

//两字符串相同

}else{

//两字符串不同

}

}

strcmp(str1,str2)

C/C++函数,比较两个陆磨字符串

设这两个字符串为仔族str1,str2,

若str1==str2,则返回零;

若str1str2,则返回正数;

若str1str2,则返回负数。

strcmp参考

在c语言中我想对汉字字符串按拼音进行排序,可以直接利用strcmp函数来进行排序吗

ansi GB2312里一级汉字是按拼音排序的,其他的汉字按部首/笔划排序盯桥激。所以能按拼音排序的汉字只有3000多个,直接用strcmp()比较就可以了。但是如果用的是Unicode,由于Unicode里的汉字按笔划顺序排序,所以没有办法实现按拼音排序。

代码如下:

#includestdio.h

#includestring.h

int main()

{

char a[5] = "王华", b[5] = "张丽", c[5] = "李强";

char t[5];

if(strcmp(a, b)  0)

{

strcpy(t, a);

strcpy(a, b);

strcpy(b, t);

}

if(strcmp(a, c)  0)

{

strcpy(t, a);

strcpy(a, c);

strcpy(c, t);   

}

if(strcmp(b, c)  0)

{

strcpy(t, b);

strcpy(b, c);

strcpy(c, t);   

}

printf("%s\t%s\t%s\n",a, b, c);

return 0;

}

扩展资料

C语言 strcmp() 函数用于对两个字符串进行比较(区分大小写)。

头文件:string.h

语法/原型:int strcmp(const char* stri1,const char* str2);

参数 str1 和 str2 是参与比较的两个字符串。

strcmp() 会根据 ASCII 编码依次凯袜比较 str1 和 str2 的每一个字符,直到出现不到的字符,或者到达字符串末尾(遇见\0)。

返回值:

如果返回值 消哗 0,则表示 str1 小于 str2。

如果返回值 0,则表示 str2 小于 str1。

如果返回值 = 0,则表示 str1 等于 str2。

请问c语言中两个汉字字符串可以比较大小吗?

当然可以!

#include "stdio.h"

#include string.h

int main(int argv,char 肆历*argc[]){

char a[5]="张三",b[5]="携春李四",t;

printf("%s %c %s\n",a,(t=strcmp(a,b))0 ? '' : t0 ? ''辩雹耐 : '=',b);

return 0;

}

运行结果:


本文标题:c语言对汉字比较的函数 c语言中如何比较中文字符
文章链接:http://ybzwz.com/article/ddpchps.html