c++字符串比较

任务描述:

写一函数,实现两个字符串的比较。

即自己写一个strcmp函数,函数原型为int strcmp(char *p1,char *p2);

设p1指向字符串s1,p2指向字符串s2。要求当s1=s2时,返回值为0,若s1!=s2,返回它们二者第一个不同字符的ASCII码差值(如“BOY”与“BAD”,第二个字母不同,“O”与“A”之差为79-65=14)。如果s1>s2,则输出正值,如s1<s2,输出负值。

测试输入:

abc  def

预期输出:

esult:-3

程序源码:

#include <iostream>
#include <string>
using namespace std;

int main() 
{
int strcmp(char *p1,char *p2);

// 请在此添加代码
    /********** Begin *********/
    char str1[1024],str2[1024];
    int a;
    cin>>str1;
    cin>>str2;
    a=strcmp(str1,str2);
    cout<<"result:"    <<a;
    
    
    /********** End **********/
return 0;
}
int  strcmp(char  *p1,char  *p2)          //自已定义字符串比较函数 
{
// 请在此添加代码
    /********** Begin *********/int k;
    for(int i=0;p1[i]!='\n';i++)
    {
        if(p1[i]!=p2[i])
        {
            k=p1[i]-p2[i];
            return k;
        }
    }
    return 0;
    
    
    /********** End **********/
}