最終更新日時:
が更新

履歴 編集

function
<cwchar>

std::vfwscanf(C++11)

namespace std {
  int vfwscanf(FILE* stream, const wchar_t* format, va_list arg);
}

概要

可変引数リストva_listを使用し、書式を指定してファイルストリームから入力する。

戻り値

fwscanf()と同じ。

備考

  • この関数はva_endマクロを呼び出さないため、呼び出し側でargに対してva_endを実行する必要がある
  • C++11で、参照するC標準ライブラリがC99へ更新されたことにともなって追加された

#include <cwchar>
#include <cstdarg>
#include <iostream>
#include <cstdio>

int input_values(const wchar_t* format, ...)
{
  std::va_list args;
  va_start(args, format);
  int count = std::vfwscanf(stdin, format, args);
  va_end(args);
  return count;
}

int main()
{
  int a = 0;
  int b = 0;
  int count = input_values(L"%d %d", &a, &b);

  std::wcout << count << L": " << a << L' ' << b << std::endl;
}

出力例

2: 1 2

バージョン

言語

  • C++11

処理系

関連項目