std::strxfrm

来自cppreference.com
< cpp‎ | string‎ | byte

 
 
字符串库
null结尾的字符串
原文:
Null-terminated strings
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
字节的字符串
多字节字符串
宽字符串
原文:
Classes
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
basic_string
char_traits
 
NULL结尾的字节串
功能
原文:
Functions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
字符操作
原文:
Character manipulation
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
转换为数字格式
原文:
Conversions to numeric formats
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
字符串操作
原文:
String manipulation
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
strcpy
strncpy
strcat
strncat
strxfrm
字符串检查
原文:
String examination
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
内存操作
原文:
Memory manipulation
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
memchr
memcmp
memset
memcpy
memmove
杂项
原文:
Miscellaneous
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
strerror
 
在头文件 <cstring> 中定义
std::size_t strxfrm( const char* dest, const char* src, std::size_t count );
。为实现定义的形式,比较两种转化的字符串src给出了相同的结果,在当前的C语言环境比较原始的字符串std::strcmp变换null结尾的字节串所指向的std::strcoll.
原文:
Transforms the null-terminated byte string pointed to by src into the implementation-defined form such that comparing two transformed strings with std::strcmp gives the same result as comparing the original strings with std::strcoll, in the current C locale.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
count的第一个字符的转换后的字符串被写入到目的地,包括终止空字符,返回的全面转化的字符串的长度,不包括终止空字符.
原文:
The first count characters of the transformed string are written to destination, including the terminating null character, and the length of the full transformed string is returned, excluding the terminating null character.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
count0,然后dest是一个空指针.
原文:
If count is 0, then dest is allowed to be a null pointer.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

目录

[编辑] 。注释。

。正确的缓冲区,可以接收整个转化的字符串的长度是1+std::strxfrm(NULL, src, 0)
原文:
The correct length of the buffer that can receive the entire transformed string is 1+std::strxfrm(NULL, src, 0)
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 。参数。

dest -
。指针数组,其中变换后的字符串将被写入的第一个元素。
原文:
pointer to the first element of the array where the transformed string will be written
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
src -
。改造null结尾的字节串的第一个字符的指针。
原文:
pointer to the first character of a null-terminated byte string to transform
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
count -
。要写入的字符的最大数量。
原文:
maximum number of characters to be written
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

===。 返回值。===

。转换后的字符串的长度,不包括终止空字符.
原文:
The length of the transformed string, not including the terminating null-character.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 。为例。

#include <iostream>
#include <iomanip>
#include <cstring>
 
int main()
{
    std::setlocale(LC_COLLATE, "cs_CZ.iso88592");
 
    std::string in1 = "hrnec";
    std::string out1(1+std::strxfrm(nullptr, in1.c_str(), 0), ' ');
    std::string in2 = "chrt";
    std::string out2(1+std::strxfrm(nullptr, in2.c_str(), 0), ' ');
 
    std::strxfrm(&out1[0], in1.c_str(), out1.size());
    std::strxfrm(&out2[0], in2.c_str(), out2.size());
 
    std::cout << "In the Czech locale: ";
    if(out1 < out2)
         std::cout << in1 << " before " << in2 << '\n';
    else
         std::cout << in2 << " before " << in1 << '\n';
 
    std::cout << "In lexicographical comparison: ";
    if(in1 < in2)
         std::cout << in1 << " before " << in2 << '\n';
    else
         std::cout << in2 << " before " << in1 << '\n';
 
}

输出:

In the Czech locale: hrnec before chrt
In lexicographical comparison: chrt before hrnec

[编辑] 。另请参阅。

变换宽字符串,wcscmp会产生相同的结果wcscoll的
原文:
transform a wide string so that wcscmp would produce the same result as wcscoll
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数) [edit]
[虚]</div></div>
转换的字符串排序规则,以便通过比较可以被替换
原文:
transforms a string so that collation can be replaced by comparison
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(虚拟保护成员函数of std::collate [edit]
按照目前的语言环境比较两个字符串
原文:
compares two strings in accordance to the current locale
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数) [edit]
C documentation for strxfrm
来自“http://zh.cppreference.com/mwiki/index.php?title=cpp/string/byte/strxfrm&oldid=33696