title: Why vsnwprintf missing
body: <p>I using <code>vsnprintf</code> for ansi string and it works well, returns <code>-1</code> only on error and returns count of needen size if it does not fit into buffer.
  I need same function for wide strings, <code>vsnwprintf</code> just not exists. I also tried <code>_vsnwprintf</code>, but it acts really different, it returns -1 even if buffer too small, while I need to know how much to expand a buffer, but only when it's necessary, I don't want to make dummy calls just to determine needen size and only then expand a buffer.</p>
  
  <p>If look at <code>vsnprintf</code> code:</p>
  
  <pre><code>int const _Result = __stdio_common_vsprintf(
      _CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR,
      _Buffer, _BufferCount, _Format, NULL, _ArgList);
  return _Result &lt; 0 ? -1 : _Result;
  </code></pre>
  
  <p>While _vsnwprintf approximately has:</p>
  
  <pre><code>int const _Result = __stdio_common_vswprintf(
      _CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION,
      _Buffer, _BufferCount, _Format, NULL, _ArgList);
  return _Result &lt; 0 ? -1 : _Result;
  </code></pre>
  
  <p>Looks like difference only in flags, I tried to call <code>__stdio_common_vswprintf</code> manually with <code>_CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR</code> flag, and it works exactly as I need, but also causing random crashes/freezes when application exiting. So I need <code>vsnwprintf</code> function, maybe someone know how to do it?</p>
  
  <p>P.S. I using Microsoft Visual Studio 2017 on Windows 7.</p>