最終更新日時:
が更新

履歴 編集

function
<cwchar>

std::vswprintf

namespace std {
  int vswprintf(wchar_t* s, size_t n, const wchar_t* format, va_list arg);
}

概要

可変引数リスト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;
}

出力

12-34

バージョン

言語

  • C++98

関連項目