在这里,我们必须创建一个strcmp(字符串比较)函数,该函数比较两个字符串,但忽略该字符串字符的大小写。如果string1 string2,则返回1。
让我们举个例子来了解这个问题,
输入值string1 = “Hello” , string2 = “hello”
输出结果0
创建我们自己的strcmp函数,该函数在比较字符串时会忽略大小写。如果第ith个索引处的字符相同,即string1 [i] == string2 [i],我们将遍历两个字符串的所有字符,然后继续。如果string1 [i]> string2 [i],则返回1。如果string1 [i]
在这里,我们必须忽略大小写,因此A和a将被视为相同。我们将使用字符的ASCII值,然后a = 97的ASCII等于A = 65的ASCII。
显示我们解决方案实施情况的程序,
示例#include
using namespace std;
int strcmpFunc(string string1, string string2){
int i;
for (i = 0; string1[i] && string2[i]; ++i){
if (string1[i] == string2[i] || (string1[i] ^ 32) == string2[i])
continue;
else
break;
}
if (string1[i] == string2[i])
return 0;
if ((string1[i] | 32)
return -1;
return 1;
}
int main(){
cout<
cout<
cout<
cout<
cout<
cout<
return 0;
}
输出结果Compareing string using our strcmp function −
Result: 0
Result: -1
Result: 1
Result: -1
Result: 0