cpp cstring
c string and array
include <cstring>
+함수들
void * memcpy (void *dest, const void *src, size_t num) ; dest return.
void * memmove(void *dest, const void *src, size_t num) ; memcpy와 유사하나 차이점은 dest와 src가 overlap이 되어도 된다. 따라서 성능상은 memcpy가 더 좋음. 그러나 overlap이 필요하면 memmove를 사용한다.
char* strcpy(char *dest, const char *src) ; dest return. null 문자까지 복사.
char* strncpy(char *dest, const char *src, size_t num) ; num크기까지 복사한다. num전에 null문자가 있으면 null전까지 복사하고 나머지는 null로 패딩한다.
char* strcat (char *dest, const char *src) ; src문자를 dest뒤에 붙인다. dest return.
char* strncat (char *dest, const char *src, size_t num) ; src의 num 크기만큼만 dest 뒤에 붙인다. 마지막에 null문자 추가.
int memcmp (const void *ptr1, const void *ptr2, size_t num) ; 두 메모리 블록을 비교한다. strcmp와 다르게 null문자가 있어도 중간에 멈추지 않고 지정된 크기만큼 비교한다. return ; ptr1<ptr2 이면 <0, ptr1>ptr2이면 >0 , ptr1=ptr2 이면 0.
int strcmp (const char *str1, const char *str2) ; 두 스트링을 비교한다. return ; <0, >0, 0
int strncmp(", ", size_t num)
등
char * strchr( char *str, int ch) ; 스트링에서 지정한 문자를 찾아 위치를 리턴.
char* strrchr (char *str, int ch) ; 스트링에서 지정한 문자를 뒤에서 부터 찾아 위치를 리턴.
char* strstr (char *str1, const char *str2) ; str1 스트링에서 str2 스트링을 찾아 위치를 리턴.
char* strtok (char *str, const char *delimeters) ; 스트링을 토크닝함. 딜리미터로 지정된 문자열 가운데 아무 문자나 맞으면 자른다. 다음 토큰 검색시에는 str을 NULL로 준다. 주의! thread-unsafe! . thread에서는 strtok_r() 사용.
void* memset (void *ptr, int val, size_num) ; 메모리 블록을 특정 값으로 초기화. ptr is returned.
size_t strlen(const char *str) ; 스트링 길이를 리턴.
+잘 안쓰는 함수
void * memchr(void *ptr, int val, size_num) ; 메모리 블록에서 지정된 값을 찾는다. return ; 처음 val이 발견된 주소. 없으면 null
size_t strcspn (const char *str1, const char *str2) ; str1에서 str2의 임의의 문자가 가장 먼저 나오는 곳 이전까지의 길이. str2를 any delimeter로 보고 첫 번째 토큰의 길이.
char * strpbrk (char *str1, const char *str2) ; str2를 any delimeter로 보고 처음 나오는 delimeter의 위치 포인터 리턴.
char* strerror(int errnum) ; 에러코드를 에러스트링으로 변환.
'Develop > C&CPP' 카테고리의 다른 글
deque (0) | 2018.06.13 |
---|---|
stack / queue (0) | 2018.06.12 |
thread mutex (0) | 2018.06.10 |
thread (0) | 2018.06.09 |
utility (0) | 2018.06.08 |