문자열 구현함수(char *strnspy(char *s1,char*s2,int n)

2010. 3. 30. 17:582010년/연습문제


s2의 처음 n개 문자가 s1으로 복사되고 '\0'문자가 첨가된다.
#include<stdio.h>
char
  *sys_strncpy(char  *s1,  char*s2,int n);
int  main()
{
  char stringA[80];
  char stringB[80];
  int inum;
  gets(stringA);
  gets(stringB);
  scanf("%d",&inum);
  printf("string %p \n",sys_strncpy(stringA,stringB,inum));
  puts(stringA);  
}
char *sys_strncpy(char * s1, char * s2,int n)
{
  char *result;
  int  i=0;
  result=s1;
  while(1)
  {
    if(i==n)
    {
      *s1='\0';
      break;
    }
    *s1=*s2;
    ++s1;
    ++s2;
    ++i;
  }
  return result;
}