|
문자열 처리함수를 프로그래밍하라.:_strien()/_strcpy()
/함수정의문을 완성하는 것임, 표준함수를 이용하는 것이 아니다.
/원형: int_strien(char*str)/int_strcpy/(char*dest.char*src)
/_strlen(char*str)은 입력된 문자열에서 문자의 개수를 출력하는 함수
/_strlen(char*dest. char *src)는 src 문자열을 des 문자열에 복사하는 함수. 이때 src문자열의 문자개수는
dset문자열의 요소개수보다 반드시 작거나 같아야 한다.작거나 같은 경우, 즉 copy가 안료된 경우에는 숫자1
을 출력하고,큰 경우 ,즉 copy가 실패한 경우에는 0을 출력한다.
/간단한 main()을 작성하여 함수를 테스트 한다.
////////////////////////////////////////////////////////////
#include
int _strlen(char *src);
int _strcpy(char *dest, char *src);
int main(void){
char a[10]="ABC";
char b[10]="DEFG";
char c[10]="HIJKG";
printf("a문자열 길이: %d, b문자열 길이: %d \n", _strlen(a), _strlen(b));
printf("b를 a로 복사: %d, b를 C로복사: %d \n", _strcpy(a,b), _strcpy(c,b));
return 0;
}
int _strlen(char *src){
if(src == NULL)
return 0;
int i=0;
while(*(src+i) != NULL){
i++;
}
return i;
}
int _strcpy(char *dest, char *src){
int a = _strlen(src);
int b = _strlen(dest);
int i=0;
if(a < b)
return 0;
while(*(src+i) != NULL){
*(dest+i) = *(src+i);
i++;
}
return 1;
}
////////////////////////
컴파일 하면 에러가 5개나 떠요..
어디가 잘못됐는지 모르겠어요.......주석좀 부탁드릴껭....
|