strcmp 的实现方法

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

int mystrcmp(const char * str1,const char * str2)
{
        int i=0;
        while(1)
        {
                if(str1[i]=='\0' &&str2[i]!='\0')
                {
                        return -1;
                }
                else if(str1[i]!='\0' &&str2[i] == '\0')
                {
                        return 1;
                }
                else if(str1[i]=='\0' &&str2[i] == '\0')
                {
                        return 0;
                }                
                if(str1[i]<str2[i])
                {
                        return -1;
                }
                else if(str1[i]>str2[i])
                {
                        return 1;
                }
                i++;
        }
}

int main()
{
        string str1;
        string str2;
        while(1)
        {
        getline(cin,str1);
        getline(cin,str2);
        cout<<"str1="<<str1<<endl;
        cout<<"str2="<<str2<<endl;
        cout<<mystrcmp(str1.c_str(),str2.c_str())<<endl;
    }
}

posted @ 2015-06-06 11:31  道心不可练  阅读(250)  评论(0编辑  收藏  举报