<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[swprintf]]></title><description><![CDATA[<p>wie ist swprintf unter windows implementiert? muesste in der wchar.h sein...da steht nur die funktionsdeklaration!...hm</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/167205/swprintf</link><generator>RSS for Node</generator><lastBuildDate>Thu, 16 Jul 2026 16:35:44 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/167205.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 07 Dec 2006 19:46:23 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to swprintf on Thu, 07 Dec 2006 19:46:23 GMT]]></title><description><![CDATA[<p>wie ist swprintf unter windows implementiert? muesste in der wchar.h sein...da steht nur die funktionsdeklaration!...hm</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1188599</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1188599</guid><dc:creator><![CDATA[cplusplus.]]></dc:creator><pubDate>Thu, 07 Dec 2006 19:46:23 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Thu, 07 Dec 2006 19:55:04 GMT]]></title><description><![CDATA[<p>Suchst Du nach einer Definition der Funktion ?</p>
<p>Alle Funktionen der WinAPI bzw. der CRT sind nur in Form von Prototypen vorhanden (deklariert in den entsprechenden Headern). Du lädst die Definitionen eigentlich entweder dynmaisch über die System-DLL's oder (Standard) über die STD-Libraries, also statisch. Der Quellcode ist nicht OpenSource, wenn Du Dich auf die MS-Compiler beziehst.</p>
<p><a href="http://www.ruby-doc.org/doxygen/1.8.2/sprintf_8c-source.html" rel="nofollow">Hier gibts ne Definition von sprintf <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></a> , wenn Dir das weiter hilft.</p>
<p>EDIT: Grad noch das gefunden: <a href="http://www.reactos.org/generated/doxygen/de/da0/rtl_2swprintf_8c-source.html" rel="nofollow">http://www.reactos.org/generated/doxygen/de/da0/rtl_2swprintf_8c-source.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1188611</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1188611</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Thu, 07 Dec 2006 19:55:04 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Fri, 08 Dec 2006 07:31:55 GMT]]></title><description><![CDATA[<p>Aber der Quellcode von wsprintf ist im CRT Sourcecode zu sehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1188735</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1188735</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Fri, 08 Dec 2006 07:31:55 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Fri, 08 Dec 2006 18:46:19 GMT]]></title><description><![CDATA[<p>swprintf ruft intern: _vswprintf auf<br />
was ist da der unterschied zu vswprintf?</p>
<p>cu</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1188895</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1188895</guid><dc:creator><![CDATA[cplusplus.]]></dc:creator><pubDate>Fri, 08 Dec 2006 18:46:19 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Sat, 09 Dec 2006 09:42:07 GMT]]></title><description><![CDATA[<p>Bei mir nicht, bei mir wird _vswprintf_l aufgerufen (VS2005)<br />
Ich vermute mal, dass es sich hier einfach um die interne Implementierung handelt deshalb auch der Underscore am Anfang der Funktion.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1188982</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1188982</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Sat, 09 Dec 2006 09:42:07 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Sat, 09 Dec 2006 17:10:58 GMT]]></title><description><![CDATA[<p>Martin Richter schrieb:</p>
<blockquote>
<p>Aber der Quellcode von wsprintf ist im CRT Sourcecode zu sehen.</p>
</blockquote>
<p><strong>Nein ist er nicht.</strong> Der Quellcode von swprintf ist vorhanden, obwohl der einem rein gar nichts bringt, da dort prinzipiell nur eine andere Funktion (namens &quot;_vswprintf_c_l&quot;) aufgerufen wird -also nicht sehr informativ-. Die Definition von &quot;_vswprintf_c_l&quot; ist nämlich wiederum nicht vorhanden.</p>
<p>PS: IDE/Compiler ist (auch) VS 2005 (Express Ed.).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1189150</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189150</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Sat, 09 Dec 2006 17:10:58 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Sat, 09 Dec 2006 17:38:16 GMT]]></title><description><![CDATA[<p>Warum musst Du gleich laut werden.<br />
Trace doch durch den Code durch. Der gesamte Code ist vorhanden! :xmas1: :xmas1:<br />
Sie ist im Sourcecode der CRT komplett enthalten.<br />
Siehe vswprint.c. Diese Funktionen dort rufen indirekt _output auf. Diese Funktion (der eigentliche Code von allen printf Funktionen) findet sich in output.c!</p>
<p>Ich nutze VS2005 hier, in der VS2003 ist der Code auch, wenn auch etwas anders. Die Dateinamen sind gleich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1189171</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189171</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Sat, 09 Dec 2006 17:38:16 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Sat, 09 Dec 2006 17:39:32 GMT]]></title><description><![CDATA[<p>BEI DER EXPRESS EDITION IST DER QUELLCODE DER CRT IMHO GAR NICHT DABEI.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1189174</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189174</guid><dc:creator><![CDATA[schreihals]]></dc:creator><pubDate>Sat, 09 Dec 2006 17:39:32 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Sat, 09 Dec 2006 17:52:05 GMT]]></title><description><![CDATA[<p>Martin Richter schrieb:</p>
<blockquote>
<p>Warum musst Du gleich laut werden.<br />
Trace doch durch den Code durch. Der gesamte Code ist vorhanden! :xmas1: :xmas1:<br />
Sie ist im Sourcecode der CRT komplett enthalten.<br />
Siehe vswprint.c. Diese Funktionen dort rufen indirekt _output auf. Diese Funktion (der eigentliche Code von allen printf Funktionen) findet sich in output.c!</p>
<p>Ich nutze VS2005 hier, in der VS2003 ist der Code auch, wenn auch etwas anders. Die Dateinamen sind gleich.</p>
</blockquote>
<p>Sorry sollte nicht laut aussehen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> ... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> . Wollte damit nur deutlich machen, dass es mir um das 'ist nicht dabei' ging ^^.<br />
Hm hab den Code nit gefunden, aber ist eigentlich auch Rille... :xmas1:</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1189186</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189186</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Sat, 09 Dec 2006 17:52:05 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Mon, 11 Dec 2006 03:42:18 GMT]]></title><description><![CDATA[<p>es gibt 2 versionen:</p>
<pre><code class="language-cpp">int vswprintf(
   wchar_t *buffer,
   const wchar_t *format,
   va_list argptr 
);
int vswprintf(
   wchar_t *buffer,
   size_t count,
   const wchar_t *format,
   va_list argptr 
); //  (C++ only)
</code></pre>
<p>was bringt das size_t count?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1189854</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189854</guid><dc:creator><![CDATA[cpp1]]></dc:creator><pubDate>Mon, 11 Dec 2006 03:42:18 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Mon, 11 Dec 2006 05:42:01 GMT]]></title><description><![CDATA[<p>cpp1 schrieb:</p>
<blockquote>
<p>was bringt das size_t count?</p>
</blockquote>
<p>Das steht in der MSDN Library, unter &quot;vswprintf function&quot;.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1189867</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189867</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Mon, 11 Dec 2006 05:42:01 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Mon, 11 Dec 2006 08:06:06 GMT]]></title><description><![CDATA[<p>Er soll verhindern, dass ein größrer Speicherbereich benutzt wird, als Du angelegt hast.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1189899</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1189899</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Mon, 11 Dec 2006 08:06:06 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Mon, 11 Dec 2006 13:12:43 GMT]]></title><description><![CDATA[<p>Martin Richter schrieb:</p>
<blockquote>
<p>Er soll verhindern, dass ein größrer Speicherbereich benutzt wird, als Du angelegt hast.</p>
</blockquote>
<p>aber das kann ich ja ueber den return param pruefen?</p>
<p>int vswprintf(<br />
wchar_t (&amp;buffer)[size],<br />
size_t count,<br />
const wchar_t *format,<br />
va_list argptr<br />
); // C++ only</p>
<p>...ist C++ only das der unterschied...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1190091</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190091</guid><dc:creator><![CDATA[cpp1]]></dc:creator><pubDate>Mon, 11 Dec 2006 13:12:43 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Mon, 11 Dec 2006 13:27:21 GMT]]></title><description><![CDATA[<p>swprintf ruft bei mir count _vswprintf_c_l auf...dafuer gibt es keine doku?<br />
ohne count wird _vswprintf aufgerufen...</p>
<p>cu</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1190100</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190100</guid><dc:creator><![CDATA[cpp1]]></dc:creator><pubDate>Mon, 11 Dec 2006 13:27:21 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Mon, 11 Dec 2006 13:28:10 GMT]]></title><description><![CDATA[<p>swprintf ruft bei mir mit dem param count _vswprintf_c_l auf...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1190103</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190103</guid><dc:creator><![CDATA[cpp1]]></dc:creator><pubDate>Mon, 11 Dec 2006 13:28:10 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Mon, 11 Dec 2006 14:02:01 GMT]]></title><description><![CDATA[<p>cpp1 schrieb:</p>
<blockquote>
<p>Martin Richter schrieb:</p>
<blockquote>
<p>Er soll verhindern, dass ein größrer Speicherbereich benutzt wird, als Du angelegt hast.</p>
</blockquote>
<p>aber das kann ich ja ueber den return param pruefen?</p>
<p>int vswprintf(<br />
wchar_t (&amp;buffer)[size],<br />
size_t count,<br />
const wchar_t *format,<br />
va_list argptr<br />
); // C++ only</p>
<p>...ist C++ only das der unterschied...</p>
</blockquote>
<p>Nein das kanst Du nicht! Wenn Du einen puffer mit 2 Bytes angibst und dort hinein 100 Bytes schreiben lässt, dann wird der Speicherbereich hinter Deinen 2 bytes überschrieben!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1190128</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190128</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Mon, 11 Dec 2006 14:02:01 GMT</pubDate></item><item><title><![CDATA[Reply to swprintf on Mon, 11 Dec 2006 16:12:47 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">// main.c
#include &lt;assert.h&gt;
#include &lt;ctype.h&gt;
#include &lt;errno.h&gt;
#include &lt;float.h&gt;
#include &lt;iso646.h&gt;
#include &lt;limits.h&gt;
#include &lt;locale.h&gt;
#include &lt;math.h&gt;
#include &lt;setjmp.h&gt;
#include &lt;signal.h&gt;
#include &lt;stdarg.h&gt;
#include &lt;stddef.h&gt;
#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;
#include &lt;string.h&gt;
#include &lt;time.h&gt;
#include &lt;wchar.h&gt;
#include &lt;wctype.h&gt;

//#define _CRT_NON_CONFORMING_SWPRINTFS

int main()
{
	wchar_t s[80];
	int ret = 0;

	swprintf(s, L&quot;SHUTDOWN&quot; );

	return 0;
}
</code></pre>
<p>main.c(27) : error C2198: 'swprintf' : too few arguments for call</p>
<p>warum bekomme ich diesen error? bekomme ich nur wenn ich den c compiler nehme...mit c++ compiler gehts ohne error...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1190213</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1190213</guid><dc:creator><![CDATA[cpp1]]></dc:creator><pubDate>Mon, 11 Dec 2006 16:12:47 GMT</pubDate></item></channel></rss>