strxfrm
基本信息
strxfrm - 转换字元串
总览
#include <string.h>
size_t strxfrm(char *dest, const char *src, size_t n);
描述
strxfrm() 函式 把 字元串 src 转换 成 另外 一种 形式. 用 strcmp() 来比较 两个 转换后的 字元串 与 用 strcoll() 来比较 它们转换前的 字元串 的 返回值 是 一样的. 转换后的 字元串的 前 n 个 字元会存放于 dest 中. 它是 根据 程式 当前的 区域选项 中的LC_COLLATE 来 转换的. (见 setlocale(3)).
返回值
strxfrm() 函式 返回 除去 结尾的 `\0' 字元, 用来 存储 转换后的 字元串所 需要的 位元组数. 如果 返回值 大于 或 等于 n, dest 中的 内容就是 不确定的.
套用举例
#include <cstring>
#include <iostream>
#include <windows.h>
int main(int argc, char* argv[])
{
char* source = "23234abc";
char des[100];
size_t len = strxfrm(des, source, 50);
std::cout << "len:" << len <<std::endl;
std::cout << "des:" << des <<std::endl;
return 0;
}
注意
如果 区域选项 是 "POSIX" 或者 "C", 那幺 strxfrm() 同用 strncpy() 来 拷贝 字元串 是等价的.