- cwchar[meta header]
- std[meta namespace]
- function[meta id-type]
namespace std {
int vswprintf(wchar_t* s, size_t n, const wchar_t* format, va_list arg);
}- size_t[link /reference/cstddef/size_t.md]
- va_list[link /reference/cstdarg/va_list.md]
可変引数リストva_listを使用し、書式と文字数の上限を指定してワイド文字列領域へ出力する。
swprintf()と同じ。
- この関数は
va_endマクロを呼び出さないため、呼び出し側でargに対してva_endを実行する必要がある
#include <cwchar>
#include <cstdarg>
#include <iostream>
void format_to(wchar_t* buffer, std::size_t n, const wchar_t* format, ...)
{
std::va_list args;
va_start(args, format);
std::vswprintf(buffer, n, format, args);
va_end(args);
}
int main()
{
wchar_t buffer[16];
format_to(buffer, 16, L"%d-%d", 12, 34);
std::wcout << buffer << std::endl;
}- std::vswprintf[color ff0000]
- std::wcout[link /reference/iostream/wcout.md]
12-34
- C++98
swprintfstd::vsnprintf(): マルチバイト文字列版