自己编写实现strcat()和strcmp()函数

来源:互联网 发布:linux 流媒体服务器 编辑:程序博客网 时间:2024/06/05 12:02
#include<stdlib.h>#include<string>#include<math.h>#include<iostream>using namespace std;void cat (char array1[] ,int m , char array2[] ,int n );   //m,n分别为数组的长度!void cmp (char array1[] ,int m , char array2[] ,int n );int main(){    char array1[100], array2[100];    cout<<"输入array1:";    gets(array1);    cout<<"输入array2:";    gets(array2);    int m = strlen(array1);     //提取输入的array1的长度!    int n = strlen(array2);     //提取输入的array2的长度!    cmp ( array1 , m , array2 , n );        //调用比较!    cat ( array1 , m , array2 , n );        //调用连接!    system("pause");}void cat (char array1[] ,int m , char array2[] ,int n ){    cout<<"执行连接函数:array1 +array2 = ";    for (int i = m , j = 0 ; j <= n ; j++ , i++ )       {        array1[i] = array2[j];    }    cout<<array1<<endl;}void cmp (char array1[] ,int m , char array2[] ,int n ){       cout<<"执行比较函数:";    int i= 0, j = 0;    for (  i , j ; ( i< m ) && ( j < n ) ; ++i, ++j)    {        if (array1[i] > array2[j])        {            cout<<"array1 > array2"<<"返回值为: 1"<<endl;break;        }        if (array1[i] < array2[j])        {            cout<<"array1 < array2"<<"返回值为: -1"<<endl;break;        }    }    if ( ( i == m ) ||( j == n ) )    {           if (( i == m ) && ( j < n ) )        {            cout<<"array1 < array2"<<"返回值为: -1"<<endl;        }        else if (( i < m ) && ( j == n ))        {            cout<<"array1 > array2"<<"返回值为: 1"<<endl;        }        else        {            cout<<"array1 = array2"<<"返回值为: 0"<<endl;        }    }}
0 0