strcmp()函数:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
void test()
{
//字符串的比较
char s1[32] = { 0 };
fgets(s1, sizeof(s1), stdin);
//fgets会从缓冲区中带走\n回车符
//需要把字符串结尾的\n改为\0
s1[strlen(s1) - 1] = '\0';
char s2[32] = "dhy";
if (strcmp(s1, s2) == 0) {
printf("相等");
}
if (strcmp(s1, s2) == 1) {
printf("s1>s2");
}
if (strcmp(s1, s2) == -1) {
printf("s1<s2");
}
}
int main()
{
test();
return 0;
}
注意:strlen(s1)是数组中存储最后一个非空白字符后面一个元素
strncmp函数:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
void test()
{
//字符串的比较
char s1[32] = { 0 };
fgets(s1, sizeof(s1), stdin);
//fgets会从缓冲区中带走\n回车符
//需要把字符串结尾的\n改为\0
//如果改成sizeof,要减去2,因为多包含一个\0
s1[strlen(s1) - 1] = '\0';
char s2[32] = "dhy";
if (strncmp(s1, s2,3) == 0) {
printf("相等");
}
if (strncmp(s1, s2,3) == 1) {
printf("s1>s2");
}
if (strncmp(s1, s2,3) == -1) {
printf("s1<s2");
}
}
int main()
{
test();
return 0;
}
更多推荐
c语言比较函数
发布评论