strcmp函数是C/C++中基本的函数,它对两个字符串进行比较,然后返回比较结果,函数形式如下:
int strcmp(const char* str1, const char* str2);
其中str1和str2可以是字符串常量或者字符串变量,返回值为整形。返回结果如下规定:
① str1小于str2,返回负值或者-1(VC返回-1); by wgenek 转载请注明出处
② str1等于str2,返回0;
③ str1大于str2,返回正值或者1(VC返回1);
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
//模拟实现strcmp
int Strcmp(const char* str1, const char* str2){
assert(str1);
assert(str2);
while (*str1&&*str2&&(*str1==*str2)){
str1++;
str2++;
}
if (*str1 > *str2){
return 1;
}
else if (*str1 < *str2){
return -1;
}
else if (*str1 == *str2){
return 0;
}
}
int main(){
char str1[] = "abcdefg";
char str2[] = "dfd";
int p = Strcmp(str1, str2);
if (p > 0){
printf("str1大\n");
}
else if (p < 0){
printf("str2大\n");
}
else if (p == 0){
printf("一样大\n");
}
system("pause");
return 0;
}