#include<iostream>
using namespace std;
int mystrlen(const char *pstring);
int mystrcpy(char *pdev,const char *psrc);
int mystrcat(char *pdev,const char *psrc);
int mystrcmp(char *pdev,const char *psrc);
int main(void)
{
char a[10]="aaa";
cout<<"mystrlen(a) : "<<mystrlen(a)<<endl;
mystrcpy(a,"123");
cout<<"mystrcpy(a,\"123\") : "<<a<<endl;
mystrcat(a,"aaa");
cout<<"mystrcat(a,\"aaa\") : "<<a<<endl;
cout<<"mystrcmp(a,\"123aaa\") : "<<mystrcmp(a,"123aaa")<<endl;
return 0;
}
int mystrlen(const char *pstring)
{
int i = 0;
while(pstring[i]!=NULL)
{
i++;
}
return i;
}
int mystrcpy(char *pdev,const char *psrc)
{
int i = 0;
while(psrc[i]!=NULL)
{
pdev[i]=psrc[i];
i++;
}
pdev[i] =NULL;
return 0;
}
int mystrcat(char *pdev,const char *psrc)
{
int dlen =mystrlen(pdev);
int slen =mystrlen(psrc);
for(int i=0;i<slen;i++)
{
pdev[dlen+i]= psrc[i];
}
pdev[dlen+slen]=NULL;
return 0;
}
int mystrcmp(char *pdev,const char *psrc)
{
if(mystrlen(pdev)>mystrlen(psrc))
{
return 1;
}
else if(mystrlen(pdev)<mystrlen(psrc))
{
return -1;
}
for(int i=0;i<mystrlen(pdev);i++)
{
if(pdev[i]>psrc[i])
{
return 1;
}
else if(pdev[i]<psrc[i])
{
return -1;
}
}
return 0;
}
'study > C/C++' 카테고리의 다른 글
복사생성자 (0) | 2013.02.22 |
---|---|
포인터 변수와 주소 (0) | 2013.01.29 |
동적할당된 다중(이중) 포인터를 인자로 함수 호출 (0) | 2013.01.23 |
이중포인터 동적할당?!? (0) | 2013.01.22 |
c++ 연산자,자료형 (0) | 2012.12.20 |