C 库 - strxfrm() 函数



C 库的 strxfrm() 函数可用于将源字符串中的第一个字符转换为当前区域设置,并将它们放置在目标字符串中。

在计算机系统中,区域设置是一组信息,根据约定和设置表示特定的区域或文化。

语法

以下是 C 库 strxfrm() 函数的语法:

size_t strxfrm(char *dest, const char *src, size_t n)

参数

此函数接受以下参数:

  • dest − 这是指向目标数组的指针,内容将被复制到其中。如果 n 参数为零,则它可以是空指针。
  • src − 这是要转换为当前区域设置的 C 字符串。
  • n − 要复制到 str1 的最大字符数。

返回值

此函数返回转换后的字符串的长度,不包括空字符 ('\0') 的终止符。

示例 1

以下是演示 strxfrm() 函数用法的 C 库程序。

#include <stdio.h>
#include <string.h>

int main () {
   char dest[20];
   char src[20];
   int len;

   strcpy(src, "Tutorials Point");
   len = strxfrm(dest, src, 20);

   printf("Length of string |%s| is: |%d|", dest, len);
   
   return(0);
}

输出

执行上述代码后,我们将得到以下结果:

Length of string |Tutorials Point| is: |15|

示例 2

在此示例中,我们说明了使用 strxfrm() 函数应用特定于区域设置的转换的结果。

#include <stdio.h>
#include <string.h>

int main() {
   // source string into current locale
   char str2[] = "Delhi to Hyderabad";
   // declare the empty character array
   char str1[30];

   printf("%lu\n", strxfrm(str1, str2, 4));
   printf("%s\n", str1);
   printf("%s\n", str2);

   return 0;
}

输出

执行上述代码后,我们将得到以下结果:

18
Delh
Delhi to Hyderabad
广告