-
string.h에 대한 연구Programming/C,C++ 2012. 10. 29. 09:13728x90
2012.10.29
오늘은 strlen과 strcpy에 대해서 쓸까 합니다.
1. strlen
size_t strlen(const char *s)
입력 파라미터가 const char *s이며, 결과값은 문자열의 길이입니다. 즉, '\0' 만나기 전까지의 길이를 계산합니다.
ex)
cha pSource[] = "ABC";
size = strlen(pSource);
결과는 3입니다.
0 1 2 3
A B C \0
'\0'전인 C의 위치까지의 길이를 계산해서 넘겨줍니다.
다만, 이 함수를 쓸때는 먼저 문자열의 NULL여부를 검사해주세요.
NULL이면 강제 종료된답니다.
2. strcpy
strcpy는 char문자열을 복사하는 함수입니다.
strcpy(dest, source)
역시 말보다는 예제를 보면서 설명이 쉽겠네요.
ex)
cha pSource[] = "ABC";
char *pDeststr = NULL;if(pSource != NULL){int size = strlen(pSource);pDeststr = (char*) malloc (sizeof(char)* (size+1));if(pDeststr != NULL){strcpy(pDeststr, pSource);}}여기서 중요한건 malloc를 했을 때, size+1을 해주는 겁니다.이유는 맨 마지막에 '\0' 를 포함해서 계산해야되기 때문입니다.'Programming > C,C++' 카테고리의 다른 글
LinkedQueue (0) 2012.11.18 LinkedList로 구현한 Stack (0) 2012.10.28 포인터(Pointer) 기본 정리 (0) 2012.10.28 배열로 구현한 Stack (0) 2012.10.27 DoubleLinkedList(이중연결리스트) (0) 2012.10.21