This commit is contained in:
2025-10-25 03:02:53 +03:00
commit 043225d523
3416 changed files with 681196 additions and 0 deletions

27
cppdraft/cuchar/syn.md Normal file
View File

@@ -0,0 +1,27 @@
[cuchar.syn]
# 28 Text processing library [[text]](./#text)
## 28.7 Null-terminated sequence utilities [[text.c.strings]](text.c.strings#cuchar.syn)
### 28.7.4 Header <cuchar> synopsis [cuchar.syn]
[🔗](#lib:mbstate_t)
#define __STDC_VERSION_UCHAR_H__ 202311Lnamespace std {using mbstate_t = *see below*; using size_t = *see [[support.types.layout]](support.types.layout "17.2.4Sizes, alignments, and offsets")*;
size_t mbrtoc8(char8_t* pc8, const char* s, size_t n, mbstate_t* ps);
size_t c8rtomb(char* s, char8_t c8, mbstate_t* ps);
size_t mbrtoc16(char16_t* pc16, const char* s, size_t n, mbstate_t* ps);
size_t c16rtomb(char* s, char16_t c16, mbstate_t* ps);
size_t mbrtoc32(char32_t* pc32, const char* s, size_t n, mbstate_t* ps);
size_t c32rtomb(char* s, char32_t c32, mbstate_t* ps);}
[1](#1)
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/text.tex#L13285)
The contents and meaning of the header <cuchar> are the same as the C standard library header [<uchar.h>](support.c.headers.general#header:%3cuchar.h%3e "17.15.1General[support.c.headers.general]"),
except that it does not declare typeschar8_t, char16_t, or char32_t[.](#1.sentence-1)
See also: ISO/IEC 9899:2024, 7.30