Standard library header <string.h>
From cppreference.net
이 헤더는 null-terminated byte strings 을 처리하기 위한 함수들을 제공합니다.
매크로 |
||
|
구현에서 정의된 널 포인터 상수
(매크로 상수) |
||
타입 |
||
|
sizeof
연산자가 반환하는 부호 없는 정수형
(typedef) |
||
함수 |
||
문자열 조작 |
||
|
(C11)
|
한 문자열을 다른 문자열로 복사합니다
(함수) |
|
|
(C11)
|
한 문자열에서 다른 문자열로 지정된 수의 문자를 복사합니다
(함수) |
|
|
(C11)
|
두 문자열을 연결함
(함수) |
|
|
(C11)
|
두 문자열의 일정량 문자를 연결함
(함수) |
|
|
문자열을 변환하여 strcmp가 strcoll과 동일한 결과를 생성하도록 함
(함수) |
||
|
(C23)
|
문자열의 복사본을 할당합니다
(function) |
|
|
(C23)
|
지정된 크기의 문자열 복사본을 할당합니다
(함수) |
|
문자열 검사 |
||
|
(C11)
|
주어진 문자열의 길이를 반환합니다
(함수) |
|
|
두 문자열을 비교합니다
(함수) |
||
|
두 문자열의 특정 길이만큼 문자를 비교합니다
(함수) |
||
|
현재 로캘에 따라 두 문자열을 비교합니다
(함수) |
||
|
문자의 첫 번째 발생 위치를 찾습니다
(함수) |
||
|
문자의 마지막 발생 위치를 찾습니다
(함수) |
||
|
다른 바이트 문자열에서 발견된 문자들로만 구성된
최대 초기 세그먼트의 길이를 반환합니다 (함수) |
||
|
다른 바이트 문자열에서 찾을 수 없는 문자들로만 구성된
최대 초기 세그먼트의 길이를 반환합니다 (함수) |
||
|
한 문자열에서 다른 문자열에 속한 문자 중 첫 번째 위치를 찾습니다
(함수) |
||
|
문자 하위 문자열의 첫 번째 발생 위치를 찾습니다
(함수) |
||
|
(C11)
|
바이트 문자열에서 다음 토큰을 찾음
(함수) |
|
문자 배열 조작 |
||
|
배열에서 문자의 첫 번째 발생을 검색합니다
(함수) |
||
|
두 버퍼를 비교합니다
(함수) |
||
|
(C23)
(C11)
|
버퍼를 문자로 채웁니다
(함수) |
|
|
(C11)
|
버퍼를 다른 버퍼로 복사합니다
(함수) |
|
|
(C11)
|
한 버퍼를 다른 버퍼로 이동합니다
(함수) |
|
|
(C23)
|
지정된 구분자 이후에 중단하면서 한 버퍼를 다른 버퍼로 복사합니다
(함수) |
|
기타 |
||
|
(C11)
(C11)
|
주어진 오류 코드에 대한 텍스트 버전을 반환합니다
(함수) |
|
시놉시스
#define __STDC_VERSION_STRING_H__ 202311L #define NULL /* 설명 참조 */ typedef /* 설명 참조 */ size_t; void* memcpy(void* restrict s1, const void* restrict s2, size_t n); void* memccpy(void* restrict s1, const void* restrict s2, int c, size_t n); void* memmove(void* s1, const void* s2, size_t n); char* strcpy(char* restrict s1, const char* restrict s2); char* strncpy(char* restrict s1, const char* restrict s2, size_t n); char* strdup(const char* s); char* strndup(const char* s, size_t n); char* strcat(char* restrict s1, const char* restrict s2); char* strncat(char* restrict s1, const char* restrict s2, size_t n); int memcmp(const void* s1, const void* s2, size_t n); int strcmp(const char* s1, const char* s2); int strcoll(const char* s1, const char* s2); int strncmp(const char* s1, const char* s2, size_t n); size_t strxfrm(char* restrict s1, const char* restrict s2, size_t n); /*QVoid*/* memchr(/*QVoid*/* s, int c, size_t n); /*QChar*/* strchr(/*QChar*/* s, int c); size_t strcspn(const char* s1, const char* s2); /*QChar*/* strpbrk(/*QChar*/* s1, const char* s2); /*QChar*/* strrchr(/*QChar*/* s, int c); size_t strspn(const char* s1, const char* s2); /*QChar*/* strstr(/*QChar*/* s1, const char* s2); char* strtok(char* restrict s1, const char* restrict s2); void* memset(void* s, int c, size_t n); void* memset_explicit(void* s, int c, size_t n); char* strerror(int errnum); size_t strlen(const char* s); size_t strnlen(const char* s, size_t n);
구현이
__STDC_LIB_EXT1__
를 정의하고, 추가적으로 사용자 코드가
__STDC_WANT_LIB_EXT1__
를
<string.h>
를 포함하기 전에 정의한 경우에만:
#ifdef __STDC_WANT_LIB_EXT1__ tyepdef /* 설명 참조 */ errno_t; tyepdef /* 설명 참조 */ rsize_t; errno_t memcpy_s(void* restrict s1, rsize_t s1max, const void* restrict s2, rsize_t n); errno_t memmove_s(void* s1, rsize_t s1max, const void* s2, rsize_t n); errno_t strcpy_s(char* restrict s1, rsize_t s1max, const char* restrict s2); errno_t strncpy_s(char* restrict s1, rsize_t s1max, const char* restrict s2, rsize_t n); errno_t strcat_s(char* restrict s1, rsize_t s1max, const char* restrict s2); errno_t strncat_s(char* restrict s1, rsize_t s1max, const char* restrict s2, rsize_t n); char* strtok_s(char* restrict s1, rsize_t* restrict s1max, const char* restrict s2, char** restrict ptr); errno_t memset_s(void* s, rsize_t smax, int c, rsize_t n) errno_t strerror_s(char* s, rsize_t maxsize, errno_t errnum); size_t strerrorlen_s(errno_t errnum); size_t strnlen_s(const char* s, size_t maxsize); #endif