swprintf_s 实现字符串的拼接

来源:互联网 发布:linux怎么更改root密码 编辑:程序博客网 时间:2024/06/06 23:52


函数原型 


template <size_t size>int swprintf_s(   wchar_t (&buffer)[size],   const wchar_t *format [,   argument]...); // C++ only

这个函数只有C++中才有,C++中字符串遇到 int, double等时不能像Java那样自动实现类型的转换 ,所以需要程序员做些事情来代替编译器的工作


参数:

1. 一个类型为wchar_t的数组

2. 数组的大小

3.目标字符串的格式

4.需要你拼接的部分


注:当然你的格式可以自己定义,后面的参数根据你自己定义的格式来。swprintf_s的功能也不仅限于此,还有许多其它用法。这里就不讲了。


// crt_swprintf_s.c// wide character example// also demonstrates swprintf_s returning error code#include <stdio.h>int main( void ){   wchar_t buf[100];   int len = swprintf_s( buf, 100, L"%s", L"Hello world" );   printf( "wrote %d characters\n", len );   len = swprintf_s( buf, 100, L"%s", L"Hello\xffff world" );   // swprintf_s fails because string contains WEOF (\xffff)   printf( "wrote %d characters\n", len );}

输出结果:

wrote 11 characterswrote -1 characters