C.에서 문자열 함수 및 유틸리티를 제공하는 라이브러리를 사용하기 전에 cd c-string/ && ./setup.sh 사용하여 라이브러리를 설치하십시오.
#include <c-string/lib.h>
#include <stdio.h>
#include <assert.h>
#include <string.h>
int main ( void ) {
String str = String_from ( "Hello, world!" );
printf ( "%sn" , str ); // Works, since it is NULL terminated.
String_append ( & str , "nfoo bar" );
printf ( "%sn" , str );
String str2 = String_clone ( str );
assert ( String_equal ( str , str2 )); // Identical
String_append ( & str2 , "nbaz" );
assert (! String_equal ( str , str2 )); // Different, since one of them changed.
String str3 = String_slice ( str2 , 0 , 5 );
assert (! strcmp ( str3 , "Hello" )); // You can use strcmp because it is NULL terminated.
// Always be sure to cleanup(aka. free) the strings to prevent memory leaks.
String_cleanup ( str );
String_cleanup ( str2 );
String_cleanup ( str3 );
} char * 의 typedef. 문자의 벡터를 나타내는 데 사용됩니다. 주로 문자열의 기본 버퍼를 나타내는 데 사용되지만 Java의 StringBuffer , std::stringstream 의 C ++ 또는 AssemblyScript의 StringSink 처럼 사용될 수 있습니다. C- 벡터로 제작되었습니다.
char const * 의 typedef. 문자열을 나타내는 데 사용됩니다. C StandRD 라이브러리와 호환성을 유지하도록 NULL 이 종료되었습니다.
문자열의 벡터, CVECTOR(String) , c- 벡터가있는 mafe. String_split 및 String_split_by_char 에서 사용합니다.
불변의 고정 크기 문자열을 묘사하는 구조물.
int len : 길이.char const *str : 컨텐츠 포인터. 아래에 선언 된 함수와 함께 C-Vector의 cvector_with_name 매크로에서 생성되는 StringBuffer에서 작동하는 다른 기능이 있습니다.
힙에 할당되지 않고 문자열 문자에서 StringBuffer를 생성합니다.
char const * : AC 문자열 문자.다수의 바이트를 하나씩 버퍼로 밀어 넣습니다.
StringBuffer *sb : 바이트가 밀릴 버퍼.char *bytes : 푸시 될 바이트에 대한 포인터.int n : 그런 다음 br을 밀어 넣을 바이트 수.CVECTOR_STATUS ) : c- 벡터의 무음 모드를 읽으십시오. NULL 된 문자열을 버퍼로 밀어 넣습니다.
StringBuffer *sb : 문자열이 밀릴 버퍼.char *str : 푸시 할 문자열.CVECTOR_STATUS ) : c- 벡터의 무음 모드를 읽으십시오.새 빈 문자열을 만듭니다.
String ) : 새로 생성 된 빈 문자열.힙에 할당되지 않고 문자열 리터럴에서 문자열을 생성하며 생성 된 범위 내에서만 유효합니다.
char const * : AC 문자열 문자.바이트 덩어리에서 새 문자열을 만듭니다.
char *bytes : 내용으로 사용될 바이트에 대한 포인터.int n : 사용될 바이트의 수.String ) : 내용으로 바이트 인 경우 청크가있는 새 문자열. 일반 NULL 종료 문자열에서 새 문자열을 만듭니다.
char *str : NULL 종료 문자열.String ) : NULL 종료 된 문자열이있는 새 문자열은 내용으로 문자열입니다.String str : 문자열.int ) : 문자열의 길이. 끈을 복제합니다. strdup NULL 종단 된 문자열을 복제하는 방법과 같이 작동합니다.
String str : 클로닝 될 문자열.String ) : 새로운 동일한 문자열.두 줄의 내용을 하나로 연결합니다.
String str1 : 첫 번째 문자열.String str2 : 두 번째 문자열.String ) : 연결된 내용이있는 새 문자열. 문자열의 세그먼트를 슬라이스합니다. 음의 후진 색인화가 허용됩니다 (즉, 인덱스 -1 은 마지막 항목을 나타냅니다).
String str : 세그먼트가 얇게 될 문자열.int fi : 시작 색인.int li : 최종 인덱스.String ) : 슬라이스 세그먼트. fi 0 li 보다 작거나 fi / li 가 psitive indices로 번역 된 후에도 또는 문자열의 길이보다 크거나 같은 경우에도 NULL 반환됩니다.Murmurhash-2 비 결정 학적 해싱 기능을 사용하여 문자열을 해시합니다.
String str : 해시 될 문자열.uint32_t ) : str 의 해시. 끝에 일반 NULL 종료 문자열이 추가됩니다.
String *str : 문자열 변수에 대한 포인터. 문자열을 더 큰 메모리 위치로 재 할당하므로 변수를 재 할당해야합니다.char *bstr : 첨부 될 NULL 종료 문자열.CVECTOR_STATUS ) : c- 벡터의 무음 모드를 읽으십시오. Verbose-Mode에서는 문자가 실패하면 1 반환합니다. 그렇지 않으면 1 .두 줄을 비교합니다.
String str1 ,String str2 : 비교 될 문자열.bool ) : 두 줄이 길이와 내용이 같으면 true false .메모리에서 문자열을 해방합니다.
String str : 해제 될 문자열.void )고정 버전의 문자열을 생성하고 반환합니다
String str : 소스.FixedString ) : 첫 번째 인수의 내용이있는 고정 문자열.문자 순서로 문자열을 분할합니다.
String str : 분할 될 문자열.char const *seq : 문자 순서.Vector_String ) : 스플릿에서 발생하는 새로운 문자열. String_split 과 마찬가지로 시퀀스 대신 문자별로 나뉩니다.
String str : 분할 될 문자열.char c : 캐릭터.Vector_String ) : 스플릿에서 발생하는 새로운 문자열. 주요 t 제거하고 , n 및